ban*_*att 1 hosts mpi slots mpich
我尝试使用以下程序运行程序:
~/mpich3/bin/mpirun --hostfile hosts_8_12.txt python simulation.py
Run Code Online (Sandbox Code Playgroud)
但是我得到这个错误:
[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
Run Code Online (Sandbox Code Playgroud)
这是我的主机文件:
c00 slots=12
c01 slots=12
c02 slots=12
c03 slots=12
c04 slots=12
c05 slots=12
c06 slots=12
c07 slots=12
Run Code Online (Sandbox Code Playgroud)
我正在使用mpich-3.1.3。当我运行程序时未在主机文件中指定插槽时,它运行良好。您是否知道问题可能来自何处?
我相信该slots关键字用于Open MPI,而不是MPICH。主机文件是一个非标准的东西,每个实现都以自己的方式指定。对于MPICH,您可以在此处查看详细信息,但简短的版本是您的文件应如下所示:
c00:12
c01:12
c02:12
c03:12
c04:12
c05:12
c06:12
c07:12
Run Code Online (Sandbox Code Playgroud)