- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个简单的 MPICH 程序,其中进程以 Ring 顺序相互发送和接收消息。
我已经设置了 2 个相同的虚拟机,并确保网络工作正常。我已经在两台机器上测试了一个简单的 MPICH 程序,它运行良好。当我尝试像上面的程序一样在不同机器上的进程之间进行通信时,问题就出现了。我收到以下错误:
Fatal error in MPI_Send: A process has failed, error stack:
MPI_Send(171)...............: MPI_Send(buf=0xbfed8c08, count=1, MPI_INT, dest=1,
tag=1, MPI_COMM_WORLD) failed
MPID_nem_tcp_connpoll(1826): Communication error with rank 1: Connection refused
/etc/hosts
配置正确。最佳答案
这是我所做的,而且有效!
使用源代码(tarball)安装了以下包
hydra
openmpi
创建主机文件(两个节点)
# cat /home/spatel/mpi/hydra/hosts
node1
node2
在(两个节点)上的 .bashrc 中设置变量
echo HYDRA_HOST_FILE=/home/spatel/mpi/hydra/hosts >> ~/.bashrc
使用HelloWorld MPI 程序在单节点上运行。
node1# /home/spatel/mpi/hydra/bin/mpiexec -np 1 /home/spatel/mpi/mpi_hello_world
Hello world from processor node1.example.com, rank 0 out of 1 processors
使用-machinefile
选项在多个节点上运行-np
是处理器数量
node1# /home/spatel/mpi/hydra/bin/mpiexec -np 4 -machinefile /home/spatel/mpi/hydra/hosts /home/spatel/mpi/mpi_hello_world
Hello world from processor node1.example.com, rank 0 out of 1 processors
Hello world from processor node2.example.com, rank 0 out of 1 processors
Hello world from processor node1.example.com, rank 0 out of 1 processors
Hello world from processor node2.example.com, rank 0 out of 1 processors
关于c++ - MPICH 通信失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14571203/
我有一个应用程序的源代码,该应用程序是 2005 年用 C++ 为 32 位架构编写的,并使用了 MPICH-1 库。我知道逻辑,我想升级 64 位机器和 MPICH-2 的源代码。 MPICH-1
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 7 年前。 Improve this ques
有人可以详细说明 MPI 的 OpenMPI 和 MPICH 实现之间的区别吗? 两者中哪一个是更好的实现? 最佳答案 目的 首先,重要的是要认识到 MPICH 和 Open-MPI 的不同之处,即它
我试图仅使用进程 0 写入文件,但该文件甚至没有在目录中创建,如果我在没有 mpich 的情况下运行它,它运行良好(并且该文件是在项目目录中创建的,因为它应该是),但当我使用 mpich 运行时则不然
我有一个简单的 MPICH 程序,其中进程以 Ring 顺序相互发送和接收消息。 我已经设置了 2 个相同的虚拟机,并确保网络工作正常。我已经在两台机器上测试了一个简单的 MPICH 程序,它运行良好
我试图运行以下 MPI 代码,但遇到了如下所示的错误。如果有人能帮助我,我将不胜感激。 #include #include int main(){ int rank, size;
我的 Ubuntu 20.04 中同时安装了 mpich 和 openmpi。 $ dpkg -l | grep mpi | grep lib ... ii libmpich-dev:amd64
/* C Example */ #include #include #include #include int main (int argc, char* argv[]) { int ra
我有适用于 MPICH 3.0.4 版的 mpif90,但我想删除它并安装 mpich2。 dislin库有问题,需要mpich2。 在我的 debian 发行版上 sudo apt-get inst
在 Windows (1.4.1p1) 中使用 MPICH 学习 MPI 时,我发现了一些示例代码 here .最初,当我运行服务器时,我必须复制生成的 port_name 并用它启动客户端。这样,客
我想知道如果 OpenMPI/MPICH2 集群的节点终止会发生什么?是否有一些机制可以容忍这种情况并继续执行? 感谢您的回答 海因里希 最佳答案 请注意,自 MPI 1.x 天以来就存在的功能是您可
刚刚开始学习mpi,所以买了3个vps搭建实验环境。我成功安装并配置了 ssh 和 mpich。这三个节点可以在没有密码的情况下相互 ssh(但不能自己)。并且 cpi 示例在本地机器上没有任何问题地
我的 Linux 机器上有一个可执行文件,我知道它是使用 OpenMPI 或 MPICH 库编译的。 问题:如何确定是哪一个? 最佳答案 以下诊断过程假设 MPICH/MPICH2 和 Open MP
我有以下使用 openmpi 和 mpich-3.2.1 编译和运行的程序,但是在使用 mpich-3.3 调用 MPI_Waitany 时出现死锁。该程序必须以偶数列运行,其中一半通过内部通信器向另
当我通过 TCP/IP 套接字在进程之间发送 MPI 消息时,OpenMPI 和 MPICH 如何处理安全性? 特别是,它们如何防止同一网络的其他用户连接到监听套接字并发送伪造的 MPI 消息? 具体
我是 HPC 新手,手头的任务是在集群上对 MPICH 和 OpenMPI 进行性能分析和比较,该集群由配备双核 AMD Opteron 处理器的 IBM 服务器组成,在 ClusterVisionO
我正在尝试安装MPICH 2 在运行 Ubuntu 11.04 (Natty Narwhal) 的 64 位机器上。我用过 sudo apt-get install mpich2 首先我很惊讶地发现
我正在尝试在 linux 集群中安装 mpich-3.1(在所有机器上运行的 Ubuntu 12.04)。以前我通过 sudo apt-get install mpich2 安装了 mpich2 但找
我为我的家庭作业(并行编程)编写了这个程序,但我在运行时遇到了一些错误。 这是来源: /**************************************** * Program:
对于长期从事该领域的人来说,我的问题可能看起来很愚蠢,但我感谢您耐心地为我详细阐述。 当他们说 MPICH 是 MPI 的“实现”时,这是什么意思? 下面的类比是否正确(?):如果我们将 MPI 视为
我是一名优秀的程序员,十分优秀!