为什么我的所有Open MPI进程都排在0位?

ape*_*dic 9 macos homebrew openmpi

我正在使用Open MPI编写并行程序.我正在运行Snow Leopard 10.6.4,我通过自制程序包管理器安装了Open MPI .

当我运行我的程序时Open MPI,每个进程报告它的排名为0,并且认为进程总数为1,并且8个进程Open MPI吐出到控制台.

我知道这不是代码问题,因为完全相同的代码将在我学院的计算机实验室的某些Ubuntu机器上按预期编译和运行.我查看了自制软件的bug跟踪器,没有人报告Open MPI软件包存在问题.我不知所措.

pow*_*rox 6

检查你要调用的mpirun.正在执行的mpirun正在启动二进制的8个独立实例.因此,每个实例都是一个Universe大小为1且等级为0的MPI应用程序.

此外,除非您计划在OS X盒的集群上运行最终代码,否则我强烈建议在VM中安装Linux版本(如virtualbox)来测试和开发这些代码.


小智 6

完全卸载以前的MPI实现.

在我的情况下,我首先安装MPICH2,然后卸载它,并更改为OpenMPI.然后同样的情况发生,所有进程的排名都是0.我做了解决这个问题的方法是:从我的系统中完全卸载MPICH2(我使用的是Ubuntu/Debian Linux).

# apt-get remove mpich2
# apt-get autoremove
Run Code Online (Sandbox Code Playgroud)