2012-01-17 4 views
0

누구든지 지정된 CPU에서 mpirun을 실행하는 방법을 알고 있습니까? "mpirun -np 4"가 사용되는 CPU 수를 지정하지만, 여기서 내가 원하는 것은 CPU ID를 지정하는 것입니다.지정된 ID를 가진 CPU에서 mpirun

OS는 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

관련 문제