如果主机文件中的一个节点出现故障,如何使用MPI处理其余节点
发布于 2013-04-08 22:47:38
MPI3标准包括一个关于“容错”的提案草案。该提案未获通过,但工作组继续取得进展。人们的期望是,该提案将被采用到该标准的未来版本中。
据我所知,没有任何开源MPI实现为提案草案提供支持。我知道有一个商业MPI确实完全实现了容错提案草案(因为我正在研究的是一个disclaimer....that MPI )。
即使有了草案提案,“节点级”故障仍然很难恢复。当前针对节点级故障的"cookbook“方法是使用检查点/重启和作业调度程序来自动重启作业。如果某个节点出现故障,系统会自动重新安排作业在与上次成功的检查点不同的一组节点上运行。
这种方法需要强大的检查点/重启基础架构、容错共享文件系统,以及应用程序和MPI实施在检查点/重启过程中的积极参与。此外,并不是每个MPI和应用程序都能够在不同的nodes...so集上重新启动。这种方法可能需要在重新启动作业之前恢复出现故障的节点。
发布于 2013-06-14 22:00:36
正如前面的帖子所说,没有任何“标准”方法来处理这个问题,但是来自MPI论坛的容错工作组的草案正在变得相当成熟。如果你想尝试一下,目前有一个基于Open MPI分支的参考实现。很快还会有其他实现包括草案,但目前,您唯一的开源选择是http://www.fault-tolerance.org。您可以在那里下载该实现,以及标准草案的一个版本和一些示例。如果你有问题,还有一个邮件列表。
https://stackoverflow.com/questions/15861139
复制相似问题