Microsoft MPI中的-bind-to命令

时间:2018-12-02 08:09:09

标签: python mpi openmpi ms-mpi

在安装了Open MPI的Ubuntu上,我可以使用-bind-to命令将每个进程绑定到诸如mpiexec -np 4 -bind-to core python mycode.py之类的物理核心。现在,我必须在装有MS-MPI的Windows上工作,我不知道是否有类似的功能。

我曾尝试根据this page使用-affinity和-affinity_layout,例如

mpiexec -np 4 -affinity -affinity_layout spread:P python mycode.py

应该会在我的2个物理核心笔记本电脑上引发错误。但这很好。你有什么想法吗?

1 个答案:

答案 0 :(得分:0)

与Microsoft MPI的关联性确实有效;当多个等级排在一个核心时(即当您超额订购时),Microsoft MPI才不会抱怨。

可以在“任务管理器>详细信息>(右键单击进程)>设置亲和力”中找到正在运行的进程的亲和力。

因此,在我的10核计算机上,运行

mpiexec -n 2 -affinity -affinity_layout spread:P notepad.exe

产生亲和力

rank | 0 | 1 |
CPU  | 0 | 5 |

跑步时

mpiexec -n 11 -affinity -affinity_layout spread:P notepad.exe

产生

rank | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
CPU  | 0 | 5 | 1 | 6 | 2 | 7 | 3 | 8 | 4 | 9 | 0  |

即,当所有内核耗尽时,映射会默默地环绕。