mpirun на процессорах с указанными идентификаторами - PullRequest
0 голосов
/ 17 января 2012

Кто-нибудь знает, как выполнить mpirun на указанных процессорах?Хотя «mpirun -np 4» указывает количество используемых процессоров, здесь я хочу указать идентификаторы процессоров.

ОС - CentOS 5.6, а MVAPICH2 используется на одном узле с ядрами 6x2.

Спасибо за сотрудничество.

1 Ответ

2 голосов
/ 18 января 2012

Да; новые версии mvapich2 используют библиотеку hwloc , чтобы включить привязку к процессору и привязку.

Из Руководства пользователя :

Например, если вы хотите запустить 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. Для каждого процесса сопоставление разделенные одним «:».

...