OpenMPI中的动态节点

时间:2011-08-02 14:46:46

标签: mpi distributed-computing openmpi

在MPI中,是否可以在启动后添加新节点?例如,我有2台计算机已经运行并行MPI应用程序。我在第三台计算机上启动此应用程序的另一个实例,并将其添加到现有的通信器。所有计算机都在本地网络中。

2 个答案:

答案 0 :(得分:2)

不,目前无法向正在运行的MPI应用程序添加新节点。 MPI旨在了解程序启动时的节点总数。

正在处理(例如MPI-3)关于处理停机节点的工作。也许如果你可以添加错误的节点,那么你可以添加新的节点,但这是我能想到的最接近的事情。有关MPI容错方法的更多信息,请参阅this answer

答案 1 :(得分:1)

MPI2程序可能会产生新的排名。该函数是MPI_Comm_spawn,它在新的MPI通信器上启动子项。也就是说,新排名与先前运行的排名具有不同的MPI_COMM_WORLD。应该可以创建一个包含所有当前运行级别的新通信器。