我想在两个站点上的多个主机上运行mpi程序(本例中为Rennes和Nancy)。我想在站点Rennes上为主机提供一组参数,在站点Nancy上为主机提供另一组参数。我试图用以下命令执行此操作:
mpirun -configfile mpi_cfg.txt
其中mpi_cfg.txt包含:
-machinefile conf/rennes/workernodes.txt parallel_wan_test conf/rennes/running.cfg
-machinefile conf/nancy/workernodes.txt parallel_wan_test conf/nancy/running.cfg
现在的问题是它将正确启动与rennes对应的行的程序。但是对于南希而言,它不会在南希的主机上发布,而是会在雷恩的主机上发布,并为南希提供参数。
有人可以指出我这样做的正确方法。
提前致谢
答案 0 :(得分:1)
如果你真的想用这一个文件做这个,我觉得你被卡住了...... MPI会读第一行,然后再尝试一下,对第二行所说的不了解。
您仍然可以使用以下内容自动执行:
1)有两个文件,mpi_nancy_cfg.txt和mpi_rennes_cfg.txt
2)然后,在bash shell中
mpirun -configfile mpi_$(hostname -s)_cfg.txt