【问题标题】:Dynamic nodes in OpenMPIOpenMPI 中的动态节点
【发布时间】:2011-10-18 08:11:42
【问题描述】:

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

【问题讨论】:

    标签: mpi distributed-computing openmpi


    【解决方案1】:

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

    【讨论】:

    • 我认为这适用于已经连接的节点,但不适用于外部的、新到通信世界的节点。
    【解决方案2】:

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

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

    【讨论】:

      猜你喜欢
      • 2015-05-06
      • 2012-03-19
      • 2014-05-20
      • 2012-05-31
      • 2010-09-25
      • 2021-04-17
      • 2014-11-19
      • 2016-06-02
      • 2015-01-19
      相关资源
      最近更新 更多