当我在拥有4个CPU的MacPro上运行我的MPI程序时,我得到的错误是没有足够的可用插槽。仅当我运行2个核心时才会发生这种情况。如果我创建一个主机文件并运行MPI,它适用于任意数量的内核。我仍然想知道为什么我不能直接运行的原因:
mpirun -np 3 ./myprogram
当我甚至有4个物理核心时。
答案 0 :(得分:1)
请参阅此处的#22-24:https://www.open-mpi.org/faq/?category=running#slots-without-hostfiles
简而言之,MPI需要知道何时被超额预订(运行的进程多于系统上可用的物理处理器/线程的数量),以便它知道更频繁地产生处理器