具有指定ID的CPU上的mpirun

时间:2012-01-17 18:54:02

标签: centos mpi mvapich2

有谁知道如何在指定的CPU上执行mpirun?虽然“mpirun -np 4”指定了所使用的CPU数量,但我这里要做的是指定CPU ID。

操作系统是CentOS 5.6,MVAPICH2用于具有6x2内核的单个节点。

感谢您的合作。

1 个答案:

答案 0 :(得分:2)

是;新版本的mvapich2使用hwloc库来启用CPU亲和性和绑定。

来自User Guide

  

例如,如果要为每个节点运行4个进程并使用核心   每个节点上有0,1,4,5,您可以指定:

     

$ mpirun_rsh -np 64 -hostfile hosts MV2_CPU_MAPPING=0:1:4:5 ./a.out

     

     

$ mpiexec -n 64 -f hosts -env MV2_CPU_MAPPING 0:1:4:5 ./a.out

     

这样,每个节点上的进程0将映射到核0,进程   1将映射到核心1,进程2将映射到核心4,并且   进程3将映射到核心5.对于每个进程,映射是   由单个“:”分隔。