将多个主机文件指定为mpirun

时间:2013-05-20 10:56:47

标签: mpi

我想在两个站点上的多个主机上运行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对应的行的程序。但是对于南希而言,它不会在南希的主机上发布,而是会在雷恩的主机上发布,并为南希提供参数。

有人可以指出我这样做的正确方法。

提前致谢

1 个答案:

答案 0 :(得分:1)

如果你真的想用这一个文件做这个,我觉得你被卡住了...... MPI会读第一行,然后再尝试一下,对第二行所说的不了解。

您仍然可以使用以下内容自动执行:

1)有两个文件,mpi_nancy_cfg.txt和mpi_rennes_cfg.txt

2)然后,在bash shell中

mpirun -configfile mpi_$(hostname -s)_cfg.txt