OpenMPI 1.4.3 mpirun主机文件错误

5
我正在尝试在4个节点上运行一个简单的MPI程序。我使用的是运行在Centos 5.5上的OpenMPI 1.4.3。当我提交带有hostfile/machinefile的MPIRUN命令时,没有输出,屏幕上显示为空白。因此,我必须终止该作业
我使用以下运行命令:mpirun --hostfile hostfile -np 4 new46
 OUTPUT ON KILLING JOB:
 mpirun: killing job...
 --------------------------------------------------------------------------
  mpirun noticed that the job aborted, but has no info as to the process that caused 
  that situation.
  --------------------------------------------------------------------------
  mpirun was unable to cleanly terminate the daemons on the nodes shown
   below. Additional manual cleanup may be required - please refer to
   the "orte-clean" tool for assistance.
   --------------------------------------------------------------------------
    myocyte46 - daemon did not report back when launched
    myocyte47 - daemon did not report back when launched
    myocyte49 - daemon did not report back when launched

这是我正在尝试在4个节点上执行的MPI程序

   **************************

   if (my_rank != 0)
   {
    sprintf(message, "Greetings from the process %d!", my_rank);
    dest = 0;
    MPI_Send(message, strlen(message)+1, MPI_CHAR, dest, tag, MPI_COMM_WORLD);
   }
   else
   {
   for (source = 1;source < p; source++)
   {
    MPI_Recv(message, 100, MPI_CHAR, source, tag, MPI_COMM_WORLD, &status);
    printf("%s\n", message);
   }

   ****************************

我的host文件看起来像这样:

   [amohan@myocyte48 ~]$ cat hostfile
   myocyte46
   myocyte47
   myocyte48
   myocyte49
   *******************************

我在每个节点上独立运行了上述MPI程序,并且编译和运行都很顺利。但是当我使用主机文件时,出现了“守护进程启动后未报告返回”的问题。我正在努力找出可能的原因。

谢谢!

1个回答

1

我认为这些行

myocyte46 - daemon did not report back when launched

问题很明显——你要么无法启动mpi守护进程,要么在之后与它们通信时出现了问题。因此,你需要开始关注网络。你能否在不输入密码的情况下ssh到这些节点?你能够ssh回来吗?暂且不考虑MPI程序,你能否

mpirun -np 4 hostname

还有什么需要吗?


谢谢。是的,我能够在节点之间进行SSH连接。看起来管理员已经让防火墙运行了,关闭它似乎可以解决问题。此外,我注意到一些Linux论坛建议将". /etc/bashrc"添加为bashrc配置文件中的第一项。 - Ashmohan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接