假设我正在启动的进程数量大于我正在使用的核心数量。当一组核心上的一系列进程完成时,我想利用这些核心。我有什么方法可以做到这一点吗?
我想在旅途中更新我的rankfile,但我不确定这是否有用。
任何输入将不胜感激。谢谢!
答案 0 :(得分:1)
启动比可用CPU核心数量更多的MPI流程通常称为超额订阅。这通常得到MPI库和操作系统的良好支持,但可能需要在作业提交时进行一些调整。应该注意的重点是可能由MPI作业启动器执行的进程到核心的附件(即mpirun,mpiexec,ortrun,srun,prun,mpprun,[addYourPreferredLauncherHere],...)。
如果启用了进程到核心的附件,则超额预订可能非常无效(了解即使在最佳运行条件下,超额预订已经可能会产生反效果)。因此,您必须简单地参考MPI启动器的文档,了解如何禁用附件(有时称为" 进程关联性")并运行您的MPI代码通常,只有比核心更多的进程。不需要修改MPI代码本身。