当我尝试从python脚本执行一个简单的Shell脚本时,我遇到了一个非常奇怪的错误。该脚本仅由第一个节点(rank = 0)执行。简单的例子:
import os
from mpi4py import MPI
comm=MPI.COMM_WORLD
size=comm.Get_size()
rank=comm.Get_rank()
if rank==0:
os.system('./simple_script.sh')
else:
print rank
结果:
[ws:29907] [[57451,1],0] routed:binomial: Connection to lifeline [[57451,0],0] lost
问题是什么?有什么想法吗?
提前谢谢
答案 0 :(得分:0)
我不确定MPI4PY究竟是如何工作的,但如果它与常规MPI一样,则必须先致电MPI_Init
才能开始执行任何操作(例如get_size
或get_rank
)。首先尝试这样做。