通过从现有组中删除进程来创建新组。
语法
int MPIAPI MPI_Group_range_excl(
MPI_Group group,
int n,
_In_count_(n) int ranges[][3],
_Out_ MPI_Group *newgroup
);
参数
group
现有组。n
要从新组排除的进程范围的数量。范围
要从现有组中排除的进程规范数组。 数组的每个元素都以三个整数的形式为第一个排名、最后一个排名和步幅指定一个进程范围。newgroup [out]
指向句柄的指针,该句柄表示包含未排除的进程的新组。 保留组的顺序。
返回值
返回成功 时MPI_SUCCESS 。 否则,返回值为错误代码。
在 Fortran 中,返回值存储在 IERROR 参数中。
Fortran
MPI_GROUP_RANGE_EXCL(GROUP, N, RANGES, NEWGROUP, IERROR)
INTEGER GROUP, N, RANGES(3,*), NEWGROUP, IERROR
注解
每个计算排名必须是现有组中的有效排名,并且所有计算排名都必须是不同的;否则,函数将返回错误。
这是一个本地操作。 不同的进程可以定义不同的组。 进程可以定义不包含自身的组。
MPI 实现不提供从头开始生成组的机制,而只能从现有组生成组。 可以使用 MPI_Comm_group 函数检索定义所有其他组的基组。 它是与初始通信器 MPI_COMM_WORLD关联的组。
要求
产品 |
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 |