Я знаю, что это странная тема, но это моя проблема. В нашем кластере у нас есть SGE с OpenMPI, скомпилированный для тесной интеграции. Когда я его настроил, он отлично работал в моих тестах, и до сих пор никаких жалоб не было. Дело в том, что когда я отправляю задание с помощью OpenMPI PE и запускаю свой двоичный файл с помощью mpirun, он терпит неудачу.
Сообщения об ошибках похожи на
fully.quallified.host.name - daemon did not report back when launched
и
[hostname:\d{5}] [[63730,0],\d{1,2}] routed:binomial: Connection to lifeline [[63730,0],0] lost
это даже для чего-то простого, например mpirun -np 40 --pernode hostname
Теперь вот что странно: если я включу подробный вывод для plm_base, он заработает: mpirun -np 40 --mca plm_base_verbose 5 --pernode hostname
работает!!! Множество отладочных данных, создаваемых этим на stderr, не содержат никаких указаний на проблему.
Я пробовал это несколько раз, и я всегда могу воспроизвести это, поэтому я совершенно уверен, что это не просто случайность. Проблема в том, что сейчас я очень озадачен.
Я, конечно, что-то упускаю, поэтому вот вопросы:
Наилучшие пожелания.
Изменить: конфигурация соответствующего PE:
pe_name ompi-gcc
slots 2000
user_lists NONE
xuser_lists NONE
start_proc_args /bin/true
stop_proc_args /bin/true
allocation_rule $round_robin
control_slaves TRUE
job_is_first_task FALSE
urgency_slots min
Ничего особенного ... OpenMPI скомпилирован для интеграции thigh и обнаруживает все, что ему нужно ... Тем не менее, он не работает с qrsh, т.е. работает только при отключении qrsh для rsh ...
Неважно. После некоторых проб и ошибок с другими параметрами plm
Я нашел эту настройку plm_rsh_disable_qrsh
устраняет проблему. Однако это не объясняет, почему установка для его базового детализации значения, отличного от 0, также устранила проблему. Это та часть, которую я до сих пор не понимаю.