MPI_Comm_dup 函数
复制具有关联键值的现有通信器。 对于每个键值,相应的复制回调函数确定与新通信器中此键关联的属性值。 例如,复制回调可以从新的通信器中删除 属性。
语法
int MPIAPI MPI_Comm_dup(
MPI_Comm comm,
_Out_ MPI_Comm *newcomm
);
参数
comm
要复制的通信器。newcomm [out]
返回时,包含新通信器的句柄。 新的通信器具有相同的一个或多个组以及从源复制的任何缓存信息,但它包含新的上下文信息。
返回值
返回成功 时MPI_SUCCESS 。 否则,返回值为错误代码。
在 Fortran 中,返回值存储在 IERROR 参数中。
Fortran
MPI_COMM_DUP(COMM,NEWCOMM,IERROR)
INTEGER COMM, NEWCOMM, IERROR
注解
此函数创建与原始通信器具有相同属性的重复通信空间。 这包括任何属性和拓扑。 即使存在涉及源通信器的挂起的点到点通信,此函数也有效。
用户可以在并行进程开始时调用 MPI_Comm_dup 函数,并在以后使用 MPI_Comm_free 函数释放重复的通信器。 还可以使用其他通信器管理模型。
此函数同时适用于内部通信器和通信间通信器。
要求
产品 |
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 |