使用CMake编译后,使用mpich2的mpirun时出现问题

时间:2013-08-15 22:25:11

标签: linux cmake mpi

我无法尝试运行MPI。我安装了mpich2-1.4.1p1,当我使用mpirun运行mpi程序时,我得到:

[starsky:27711] [[INVALID],INVALID] ORTE_ERROR_LOG: A system-required executable either could not be found or was not executable by this user in file ../../../../../../orte/mca/ess/singleton/ess_singleton_module.c at line 357
[starsky:27711] [[INVALID],INVALID] ORTE_ERROR_LOG: A system-required executable either could not be found or was not executable by this user in file ../../../../../../orte/mca/ess/singleton/ess_singleton_module.c at line 230
[starsky:27711] [[INVALID],INVALID] ORTE_ERROR_LOG: A system-required executable either could not be found or was not executable by this user in file ../../../orte/runtime/orte_init.c at line 132
--------------------------------------------------------------------------
It looks like orte_init failed for some reason; your parallel process is
likely to abort.  There are many reasons that a parallel process can
fail during orte_init; some of which are due to configuration or
environment problems.  This failure appears to be an internal failure;
here's some additional information (which may only be relevant to an
Open MPI developer):

  orte_ess_set_name failed
  --> Returned value A system-required executable either could not be found or was not executable by this user (-127) instead of ORTE_SUCCESS
--------------------------------------------------------------------------
[starsky:27719] [[INVALID],INVALID] ORTE_ERROR_LOG: A system-required executable either could not be found or was not executable by this user in file ../../../../../../orte/mca/ess/singleton/ess_singleton_module.c at line 357
--------------------------------------------------------------------------
It looks like MPI_INIT failed for some reason; your parallel process is
likely to abort.  There are many reasons that a parallel process can
fail during MPI_INIT; some of which are due to configuration or environment
problems.  This failure appears to be an internal failure; here's some
additional information (which may only be relevant to an Open MPI
developer):

  ompi_mpi_init: orte_init failed
  --> Returned "A system-required executable either could not be found or was not executable by this user" (-127) instead of "Success" (0)

以及其他非常相似的错误消息。

这与mpiexec fails as MPI init aborts中的问题非常相似,因为我似乎同时拥有Open MPI和mpich2。但是,我正在使用cmake进行编译,当我执行建议的mpicc-vt.mpich2(mpicc-vt因为我使用vampir trace)进行编译,然后mpirun.mpich2运行时,我收到以下错误:

To run 'mpirun.mpich2' please ask your administrator to install the package 'mpich2'

我已经安装了mpich2。有没有我想安装mpich2的配置?当我在配置中查看this manual时,似乎没有一个符合我的需要。

由于

1 个答案:

答案 0 :(得分:2)

由于您的系统上安装了两个MPI库,处于各种完成状态,因此很难分清这里发生了什么。我认为此时最好的做法是卸载Open MPI和MPICH,然后转到您正在使用的软件包管理器并重新安装。这是让一切运转起来的最简单方法。

如果你想要最新版本(这通常是一件好事),你必须直接进入源代码,所以看一下你下载的tarball捆绑的README。通常,对于这两个软件包,您都使用安装Unix软件的标准方法。

./configure --prefix=<path for installation>
make
make install

MPICH和Open MPI有很多自定义选项,如果你执行./configure --help并阅读自述文件,你可以阅读这些选项,但除非你有一个特殊的系统,否则通常都不需要这些选项。