单节点,多个MPI任务

时间:2014-03-24 10:33:04

标签: mpi

我需要调试一个只能访问单个节点/机器的MPI代码。问题是我正在寻找的错误仅在运行多于节点时出现,但它在运行时没有,例如,在同一节点中的两个MPI任务,一切都很顺利。我假设我的MPI实现(mviapi​​ch2)巧妙地处理在同一节点上运行的任务,例如,通过IPC策略甚至memcpy替换网络通信。

所以我的问题是:如何在单个节点上运行两个MPI任务,但是让MPI将它们视为不同节点上的任务?这可能吗?

1 个答案:

答案 0 :(得分:3)

您可以通过将MV2_USE_SHARED_MEM环境变量设置为0来禁用MVAPICH2共享内存设备:

mpiexec ... -env MV2_USE_SHARED_MEM 0 ... ./executable

确保您的MVAPICH2是使用TCP / IP设备构建的,否则您的排名将无法与关闭共享内存支持进行通信。