MPI_Comm_spawn_multiple 函数
生成多个二进制文件或具有多个参数集的同一个二进制文件,与它们建立通信并将其置于同一 MPI_COMM_WORLD中。
语法
int MPIAPI MPI_Comm_spawn_multiple(
int count,
_In_count_(count) char *array_of_commands[],
_In_opt_count_(count) char **array_of_argv[],
_In_count_(count) int array_of_maxprocs[],
_In_count_(count) MPI_Info array_of_info[],
int root,
MPI_Comm comm,
_Out_ MPI_Comm *intercomm,
_Out_opt_ int array_of_errcodes[]
);
参数
计数
命令数。array_of_commands
要执行的程序。array_of_argv
命令的参数。array_of_maxprocs
要为每个命令启动的最大进程数。array_of_info
告知运行时系统在何处以及如何启动进程的信息对象。root
在其中检查先前参数的进程排名。comm
包含一组生成进程的内部通信器。intercomm [out]
原始组和新生成的组之间的通信器。array_of_errcodes [out, 可选]
每个进程一个错误代码。
返回值
返回成功 时MPI_SUCCESS 。 否则,返回值为错误代码。
在 Fortran 中,返回值存储在 IERROR 参数中。
Fortran
MPI_COMM_SPAWN_MULTIPLE(COUNT, ARRAY_OF_COMMANDS, ARRAY_OF_ARGV,
ARRAY_OF_MAXPROCS, ARRAY_OF_INFO, ROOT, COMM, INTERCOMM,
ARRAY_OF_ERRCODES, IERROR)
INTEGER COUNT, ARRAY_OF_INFO(*), ARRAY_OF_MAXPROCS(*), ROOT, COMM,
INTERCOMM, ARRAY_OF_ERRCODES(*), IERROR
CHARACTER*(*) ARRAY_OF_COMMANDS(*), ARRAY_OF_ARGV(COUNT, *)
要求
产品 |
HPC Pack 2012 MS-MPI 可再发行程序包、HPC Pack 2008 R2 MS-MPI 可再发行程序包、HPC Pack 2008 MS-MPI 可再发行程序包或 HPC Pack 2008 客户端实用工具 |
标头 |
Mpi.h;Mpif.h |
库 |
Msmpi.lib |
DLL |
Msmpi.dll |