MPI имеет только мастер-узлы - PullRequest
1 голос
/ 18 апреля 2011

Я пытаюсь использовать MPI с моим 4-ядерным процессором.Я следовал этому уроку: http://debianclusters.org/index.php/MPICH:_Starting_a_Global_MPD_Ring

Но в конце, когда я пробую скрипт hello.out, я получаю только процесс сервера (главные узлы):

mpiexec -np 4 ./hello.out
Hello MPI from the server process!
Hello MPI from the server process!
Hello MPI from the server process!
Hello MPI from the server process!

У меня естьискал по всей сети, но не смог найти никаких подсказок для этой проблемы.

Вот мой результат mpdtrace:

[nls@debian] ~ $ mpd --ncpus=4 --daemon
[nls@debian] ~ $ mpdtrace -l
debian_52063 (127.0.0.1)

Разве я не должен получить одну линию трассировки на ядро?

Спасибо за вашу помощь,

Малханс

1 Ответ

1 голос
/ 18 апреля 2011

95% времени, когда вы видите эту проблему - задачи MPI не получают «правильные» идентификаторы ранга, обычно заканчивающиеся нулевым рангом - это означает, что есть несоответствие в библиотеках MPI.Либо mpiexec выполняет запуск не совпадает с mpicc (или любым другим), используемым для компиляции программы, либо библиотеки MPI, которые дочерние процессы получают при запуске (если они связаны динамически), отличаются от тех, для которых они предназначены.Поэтому я бы начал с двойной проверки этих вещей.

...