Задание MPI в кластере Rocks (планировщик SGE) не выполняется на нескольких узлах
Я пытаюсь запустить параллельное задание MPI с помощью планировщика Sun Grid Engine в кластере Rocks v5.4.3. Кластер имеет очередь с именем "all.q", которая имеет 22 вычислительных узла: 21 из которых имеет 8 ЦП, а 1 - 4 ЦП. Однако при выполнении параллельного задания все создаваемые задачи ограничиваются одним узлом.
Например, если я запрашиваю 16 процессоров (задач) в сценарии отправки задания и отправляю задание в планировщик, используя qsub
задание запускается успешно, но все 16 задач запускаются на одном узле (первом назначенном узле), а не распределяются между узлами, назначенными заданию планировщиком.
Сценарий отправки задания для этого контрольного примера выглядит следующим образом:
#!/bin/bash
#$ -N test
#$ -cwd
#$ -pe mpi 16
#$ -S /bin/bash
#$ -q all.q
#$ -e $JOB_NAME.e$JOB_ID
#$ -o $JOB_NAME.o$JOB_ID
lammps=/home/Brian/lammps/lmp_openmpi
/opt/intel/openmpi-1.4.4/bin/mpirun -machinefile $TMPDIR/machines \
-np $NSLOTS $lammps -in in.melt > job.log
Выходной файл из планировщика показывает, что задачи заданий присваиваются следующим узлам:
compute-1-14
compute-1-14
compute-1-14
compute-1-14
compute-1-14
compute-1-14
compute-1-14
compute-1-14
compute-1-16
compute-1-16
compute-1-16
compute-1-16
compute-1-16
compute-1-16
compute-1-16
compute-1-16
Однако если я ssh
в compute-1-14 и запустить top
а также grep
процессы lmp_openmpi, я получаю следующее:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
21762 Brian 25 0 253m 87m 5396 R 99.1 0.5 2:19.60 lmp_openmpi
21761 Brian 25 0 253m 87m 5508 R 73.3 0.5 1:50.14 lmp_openmpi
21759 Brian 25 0 253m 87m 5804 R 71.3 0.5 1:55.38 lmp_openmpi
21760 Brian 25 0 253m 87m 5512 R 71.3 0.5 1:36.27 lmp_openmpi
21765 Brian 25 0 253m 87m 5324 R 61.4 0.5 1:53.11 lmp_openmpi
21763 Brian 25 0 253m 87m 5496 R 59.5 0.5 1:53.14 lmp_openmpi
21770 Brian 25 0 253m 87m 5308 R 59.5 0.5 1:45.21 lmp_openmpi
21767 Brian 25 0 253m 87m 5504 R 57.5 0.5 1:58.65 lmp_openmpi
21772 Brian 25 0 253m 87m 5304 R 43.6 0.5 1:52.24 lmp_openmpi
21771 Brian 25 0 253m 87m 5268 R 39.6 0.5 1:51.23 lmp_openmpi
21773 Brian 25 0 253m 87m 5252 R 39.6 0.5 1:52.02 lmp_openmpi
21774 Brian 25 0 253m 87m 5228 R 39.6 0.5 1:47.85 lmp_openmpi
21766 Brian 25 0 253m 87m 5332 R 29.7 0.5 1:51.18 lmp_openmpi
21764 Brian 25 0 253m 87m 5356 R 27.7 0.5 2:09.05 lmp_openmpi
21768 Brian 25 0 253m 87m 5356 R 21.8 0.5 1:35.28 lmp_openmpi
21769 Brian 25 0 253m 87m 5324 R 7.9 0.5 1:50.63 lmp_openmpi
16 процессов во время работы top
на compute-1-16 не показаны процессы lmp_openmpi.
Я не уверен, насколько подробно я объяснил проблему, поэтому, если потребуется дополнительная информация, пожалуйста, дайте мне знать. Я также новичок в Rocks и SGE, так что, надеюсь, мой пример достаточно ясен. Если нет, я изменю. Спасибо всем заранее.
1 ответ
Проблема: проблема со сборкой openMPI на нашем кластере.
Решение: установка новейших версий компиляторов Intel v16.0.3 и Intel MPI v5.1.3, которые решили проблему с несколькими узлами.