我正在尝试将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)
我不应该为每个核心获得一条跟踪线吗?
感谢您的帮助,
Malchance
答案 0 :(得分:1)
95%的情况下,当你看到这个问题时 - MPI任务没有获得“正确”排名ID,通常最终都排在零位 - 这意味着MPI库中存在不匹配。 mpiexec执行启动与用于编译程序的mpicc(或其他)不同,或者子进程在启动时拾取的MPI库(如果动态链接)与预期的不同。所以我首先要仔细检查这些事情。