我尝试使用以下命令运行程序:
~/mpich3/bin/mpirun --hostfile hosts_8_12.txt python simulation.py
但是我收到了这个错误:
[mpiexec@pomegranate] HYDU_process_mfile_token (utils/args/args.c:296): token slots not supported at this time
[mpiexec@pomegranate] HYDU_parse_hostfile (utils/args/args.c:343): unable to process token
[mpiexec@pomegranate] mfile_fn (ui/mpich/utils.c:336): error parsing hostfile
[mpiexec@pomegranate] match_arg (utils/args/args.c:152): match handler returned error
[mpiexec@pomegranate] HYDU_parse_array (utils/args/args.c:174): argument matching returned error
[mpiexec@pomegranate] parse_args (ui/mpich/utils.c:1596): error parsing input array
[mpiexec@pomegranate] HYD_uii_mpx_get_parameters (ui/mpich/utils.c:1648): unable to parse user arguments
[mpiexec@pomegranate] main (ui/mpich/mpiexec.c:153): error parsing parameters
这是我的主机文件:
c00 slots=12
c01 slots=12
c02 slots=12
c03 slots=12
c04 slots=12
c05 slots=12
c06 slots=12
c07 slots=12
我正在使用mpich-3.1.3。当我在没有指定主机文件中的插槽的情况下运行程序时,它运行良好。你知道问题可能来自哪里吗?
答案 0 :(得分:5)
我认为slots
关键字用于Open MPI,而不是MPICH。 hostfile是一个非标准的东西,每个实现都以自己的方式指定。对于MPICH,您可以看到详细信息here,但简短版本是您的文件应如下所示:
c00:12
c01:12
c02:12
c03:12
c04:12
c05:12
c06:12
c07:12