【问题标题】:MPI : Communication error with rank 1: Connection refusedMPI:等级 1 的通信错误:连接被拒绝
【发布时间】:2018-04-14 12:34:10
【问题描述】:

我有一个简单的 mpi 程序如下:

#include <iostream>
#include <mpi.h>

int main(int argc, char * argv[]) {
    MPI::Init(argc, argv);

    int world_rank;
    MPI_Comm_rank(MPI_COMM_WORLD, &world_rank);
    int world_size;
    MPI_Comm_size(MPI_COMM_WORLD, &world_size);

    int number;
    if (world_rank == 0) {
        number = -1;
        MPI_Send(&number, 1, MPI_INT, 1, 0, MPI_COMM_WORLD);
    } else if (world_rank == 1) {
        MPI_Recv(&number, 1, MPI_INT, 0, 0, MPI_COMM_WORLD,
                 MPI_STATUS_IGNORE);
        printf("Process 1 received number %d from process 0\n",
               number);
    }


    return 0;
}

我指定了一个包含 2 个条目的主机文件。服务器是我正在运行 mpi 的本地机器,而 ubuntu 是远程机器。

Server
ubuntu

当我尝试通过运行 mpirun -np 2 --hostfile hosts ./test 来运行 mpi 可执行文件时,它给了我一个错误 Communication error with rank 1: Connection refused。但是,如果我颠倒主机文件中主机的顺序

ubuntu
Server

它工作正常。我似乎无法理解为什么。主机文件中主机的顺序是否重要?

【问题讨论】:

  • 你的 MPI 实现是什么,它是哪个版本。请告诉我们更多关于您的安装以及到目前为止您已采取的步骤。
  • 如果您的 MPI 实现使用 hosts 文件中主机的顺序来确定排名,我不会感到惊讶。如果是这种情况,那么正在发生的事情是您的一台机器可以正常发送消息,但无法接收它们。这可能是由于防火墙设置过于严格。
  • 您的代码在这里运行良好...
  • @Zulan:我使用的是 MPICH 3.0.4 版。我使用“sudo apt-get install libcr-dev mpich2 mpich2-doc”安装了它。我创建了一个 mpiuser 并按照本教程 (mpitutorial.com/tutorials/running-an-mpi-cluster-within-a-lan) 设置了一个包含 2 个节点的集群。
  • wiki.mpich.org/mpich/index.php/Frequently_Asked_Questions 问:我的 MPI 程序因错误而中止,说它无法与其他进程通信。另外,请编辑您的问题以包含所要求的附加信息,以便在不阅读 cmets 的情况下成为有用的问题。

标签: c++ mpi


【解决方案1】:

我碰巧遇到了与运行时错误相同的问题。

确保您可以 ssh 并登录到您的客户端计算机后无需密码。 MPICH master 找不到客户端(slave)的主机名的主要原因是因为/etc/hosts file 中的客户端,localhost 名称既分配给客户端用户名又分配给本地主机本身,例如运行sudo vim etc/hosts,您将获得您机器的主机名列表:

127.0.0.1 clientUsrName
127.0.0.1 localhost

顺序根本不重要。您所要做的就是将您的 clientUsrName 错误地注释为 127.0.0.1 作为 localhost IP。例如:

# 127.0.0.1 clientUsrName
127.0.0.1 localhost

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-18
    • 1970-01-01
    • 1970-01-01
    • 2016-12-09
    • 2018-04-21
    • 2016-04-25
    • 2015-07-29
    相关资源
    最近更新 更多