由于 MPI init 中止,mpiexec 失败

发布于 11-29 00:34 字数 3118 浏览 0 评论 0原文

我正在尝试在运行 Ubuntu 11.04 (Natty Narwhal) 的 64 位计算机上安装 MPICH 2。我

sudo apt-get install mpich2

首先使用了,我很惊讶地发现 mpd 没有安装。在 Google 上查找时,我发现 Hydra 是新的默认包管理器。 所以我尝试运行我的 MPI 代码。我收到以下错误。

> -------------------------------------------------------------------------------------------
> [ip-10-99-75-58:02212] [[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 [ip-10-99-75-58:02212] [[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 [ip-10-99-75-58:02212] [[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
> --------------------------------------------------------------------------
> --------------------------------------------------------------------------
> 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)
> --------------------------------------------------------------------------
> *** The MPI_Init() function was called before MPI_INIT was invoked.
> *** This is disallowed by the MPI standard.
> *** Your MPI job will now abort.
> -------------------------------------------------------------------------------------------

首先,它在我看来是一个 Open MPI 错误。但我安装了 MPICH 2 而不是 Open MPI。

其次,我正在解决如何处理这个问题,因为所有帮助似乎都是针对 Open MPI 用户的。我错过了什么吗?

I am trying to install MPICH 2 on a 64-bit machine running on Ubuntu 11.04 (Natty Narwhal). I used

sudo apt-get install mpich2

First I was surprised to see that mpd was not installed. On looking up on Google, I saw that Hydra is the new default package manager.
So I tried to run my MPI code. I got the following error.

> -------------------------------------------------------------------------------------------
> [ip-10-99-75-58:02212] [[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 [ip-10-99-75-58:02212] [[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 [ip-10-99-75-58:02212] [[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
> --------------------------------------------------------------------------
> --------------------------------------------------------------------------
> 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)
> --------------------------------------------------------------------------
> *** The MPI_Init() function was called before MPI_INIT was invoked.
> *** This is disallowed by the MPI standard.
> *** Your MPI job will now abort.
> -------------------------------------------------------------------------------------------

First of all, it looks to me as an Open MPI error. But I installed MPICH 2 and not Open MPI.

Secondly, I am at a fix on how to handle this as all help seems to be directed to Open MPI users. Am I missing something?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

谁人与我共长歌2024-12-06 00:34:11

我在 Ubuntu 12.04 上也有同样的问题。我发现我的问题是因为我的计算机上同时有 open-mpi 和 mpich2 。当我使用 mpicc 编译程序时,它将链接到 open-mpi 而不是 mpich2。要解决此问题,您可以使用“mpicc.mpich2”编译程序,然后使用“mpiexec.mpich2”执行代码。

I have the same problem on Ubuntu 12.04. I find my problem is because I have both open-mpi and mpich2 on my computer. When I compile my program using mpicc, it will be linked to open-mpi not mpich2. To fix this problem, you can use "mpicc.mpich2" to compile your program and then use "mpiexec.mpich2" to execute your code.

我还不会笑2024-12-06 00:34:11

事实上,这些错误消息都是 Open MPI 错误。由于某种原因,您似乎还在某处安装了 Open MPI 的(配置错误?)副本。当您键入 mpiexec 时,您可以通过运行 which mpiexec 来检查正在执行哪个特定文件。我相信您可以将其与以下结果进行比较:

dpkg --listfiles mpich2

(或类似),以便找出 MPICH2 软件包的安装位置。

Indeed, these error messages are all Open MPI errors. For some reason, you appear to also have a (badly configured?) copy of Open MPI installed somewhere. You can check which particular file you are executing when you type mpiexec by running which mpiexec. I believe that you can compare this with the result of:

dpkg --listfiles mpich2

(or similar) in order to figure out where the MPICH2 package was installed.

一袭水袖舞倾城2024-12-06 00:34:11

我也遇到过这种情况,然后我就发现了这个问题。在启动期间,系统上的某个位置 LD_PRELOAD 设置为指向 OpenMPI 中的 libmpi.so。

示例:

export LD_PRELOAD=<some_directory>/openmpi/1.4.4/lib/libmpi.so

结果是 MPICH2 失败。只需在运行 MPICH2 之前执行“取消设置 LD_PRELOAD”,问题就会消失。

请注意,有时实际上需要将 LD_PRELOAD 设置为 OpenMPI 的 libmpi.so 才能使 OpenMPI 正常工作,因此取消设置可能会破坏 OpenMPI。如果您需要使用 OpenMPI,请记住重置它。

I had this happen to me, and I found the issue. Somewhere on your system during startup LD_PRELOAD was set to point to libmpi.so in OpenMPI.

Example:

export LD_PRELOAD=<some_directory>/openmpi/1.4.4/lib/libmpi.so

The result is that MPICH2 fails. Just do 'unset LD_PRELOAD' before running MPICH2 and the issue goes away.

Note that setting LD_PRELOAD to OpenMPI's libmpi.so is actually required sometimes for OpenMPI to work, so unsetting may break OpenMPI for you. Just remember to reset it if you need to use OpenMPI.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文