在 4 台机器和 4 个进程的集群中 MPI_COMM_WORLD 的输出应该是什么?
what should be the output of MPI_COMM_WORLD in a cluster of 4 machines and 4 processes?
我正在尝试学习如何使用 MPICH2 进行并行编程。我已经使用具有 1 个主控和 3 个从属的虚拟框成功设置了一个虚拟集群。都有4核cpu。当我尝试使用 -np 4 在单台机器上 运行 一个程序并打印 MPI_COMM_WORLD 输出时,它显示 4,这没问题,因为有 4 个进程。但是当使用参数 -np 4 -f hosts 在集群上启动时, MPI_COMM_WORLD 的输出仍然是 4 ,我想它应该是 16,因为 4 台机器上有 4 个进程。
任何人都可以解释我做错了什么吗?
MPI 是在每台机器上启动相同的程序还是仅在并行代码启动的部分启动。
-np <np>
specify the number of processors to run on
如果你想使用 4 个节点和每个节点 4 个进程,你应该使用 -np 16
。
我正在尝试学习如何使用 MPICH2 进行并行编程。我已经使用具有 1 个主控和 3 个从属的虚拟框成功设置了一个虚拟集群。都有4核cpu。当我尝试使用 -np 4 在单台机器上 运行 一个程序并打印 MPI_COMM_WORLD 输出时,它显示 4,这没问题,因为有 4 个进程。但是当使用参数 -np 4 -f hosts 在集群上启动时, MPI_COMM_WORLD 的输出仍然是 4 ,我想它应该是 16,因为 4 台机器上有 4 个进程。
任何人都可以解释我做错了什么吗? MPI 是在每台机器上启动相同的程序还是仅在并行代码启动的部分启动。
-np <np>
specify the number of processors to run on
如果你想使用 4 个节点和每个节点 4 个进程,你应该使用 -np 16
。