仮想マシンで python Hello World mpi4py コードを実行する際に問題があります。
hello.py コードは次のとおりです。
#!/usr/bin/python
#hello.py
from mpi4py import MPI
comm = MPI.COMM_WORLD
size = comm.Get_size()
rank = comm.Get_rank()
print "hello world from process ", rank,"of", size
mpiexec と mpirun を使用して実行しようとしましたが、うまく動作しません。出力:
$ mpirun -c 4 python hello.py
hello world from process 0 of 1
hello world from process 0 of 1
hello world from process 0 of 1
hello world from process 0 of 1
そしてmpiexecから:
$ mpiexec -n 4 python hello.py
hello world from process 0 of 1
hello world from process 0 of 1
hello world from process 0 of 1
hello world from process 0 of 1
彼らは通信のランクとサイズを取得していないようです。何が原因でしょうか? それを解決する方法は?
mpiexec --version
mpiexec (OpenRTE) 1.6.5
mpirun --version
mpirun (Open MPI) 1.6.5
システムは、仮想マシン上の Ubuntu 14.04 です。
理由はありますか?ありがとう!