2012-01-17 261 views
0

有誰知道如何在指定的CPU上執行mpirun?儘管「mpirun -np 4」指定了使用的CPU數量,但我想要做的是指定CPU ID。在指定ID的CPU上執行mpirun

操作系統是CentOS 5.6,MVAPICH2用於具有6x2內核的單個節點。

謝謝您的配合。

回答

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。過程,映射爲 ,由單個「:」分隔。

+0

謝謝您的快速回復! – user1154648 2012-01-17 22:02:44