NewMadeleine

Documentation

« back to PM2 home.
nm_mpi_group.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

Functions: Groups
int MPI_Group_size (MPI_Group group, int *size)
 Returns the size of a group.
 
int MPI_Group_rank (MPI_Group group, int *rank)
 Returns the rank of this process in the given group.
 
int MPI_Group_union (MPI_Group group1, MPI_Group group2, MPI_Group *newgroup)
 Produces a group by combining two groups.
 
int MPI_Group_intersection (MPI_Group group1, MPI_Group group2, MPI_Group *newgroup)
 Produces a group as the intersection of two existing groups.
 
int MPI_Group_difference (MPI_Group group1, MPI_Group group2, MPI_Group *newgroup)
 Produces a group from the difference of two groups.
 
int MPI_Group_compare (MPI_Group group1, MPI_Group group2, int *result)
 Compares two groups.
 
int MPI_Group_incl (MPI_Group group, int n, const int *ranks, MPI_Group *newgroup)
 Produces a group by reordering an existing group and taking only listed members.
 
int MPI_Group_range_incl (MPI_Group group, int n, int ranges[][3], MPI_Group *newgroup)
 Creates a new group from ranges of ranks in an existing group.
 
int MPI_Group_excl (MPI_Group group, int n, const int *ranks, MPI_Group *newgroup)
 Produces a group by reordering an existing group and taking only unlisted members.
 
int MPI_Group_range_excl (MPI_Group group, int n, int ranges[][3], MPI_Group *newgroup)
 Produces a group by excluding ranges of processes from an existing group.
 
int MPI_Group_free (MPI_Group *group)
 Frees a group.
 
int MPI_Group_translate_ranks (MPI_Group group1, int n, const int *ranks1, MPI_Group group2, int *ranks2)
 Maps the rank of a set of processes in group1 to their rank in group2.
 

Function Documentation

◆ MPI_Group_compare()

int MPI_Group_compare ( MPI_Group  group1,
MPI_Group  group2,
int *  result 
)

Compares two groups.

Parameters
group1first group
group2second group
resultnteger which is MPI_IDENT if the order and members of the two groups are the same, MPI_SIMILAR if only the members are the same, and MPI_UNEQUAL otherwise
Returns
MPI status

◆ MPI_Group_difference()

int MPI_Group_difference ( MPI_Group  group1,
MPI_Group  group2,
MPI_Group newgroup 
)

Produces a group from the difference of two groups.

Parameters
group1first group
group2second group
newgroupdifference group
Returns
MPI status

◆ MPI_Group_excl()

int MPI_Group_excl ( MPI_Group  group,
int  n,
const int *  ranks,
MPI_Group newgroup 
)

Produces a group by reordering an existing group and taking only unlisted members.

Parameters
groupgroup
nnumber of elements in array ranks
ranksranks of processes in group to appear in newgroup
newgroupnew group derived from above, in the order defined by ranks
Returns
MPI status

◆ MPI_Group_free()

int MPI_Group_free ( MPI_Group group)

Frees a group.

Parameters
groupgroup to free
Returns
MPI status

◆ MPI_Group_incl()

int MPI_Group_incl ( MPI_Group  group,
int  n,
const int *  ranks,
MPI_Group newgroup 
)

Produces a group by reordering an existing group and taking only listed members.

Parameters
groupgroup
nnumber of elements in array ranks
ranksranks of processes in group to appear in newgroup
newgroupnew group derived from above, in the order defined by ranks
Returns
MPI status

◆ MPI_Group_intersection()

int MPI_Group_intersection ( MPI_Group  group1,
MPI_Group  group2,
MPI_Group newgroup 
)

Produces a group as the intersection of two existing groups.

Parameters
group1first group
group2second group
newgroupintersection group
Returns
MPI status

◆ MPI_Group_range_excl()

int MPI_Group_range_excl ( MPI_Group  group,
int  n,
int  ranges[][3],
MPI_Group newgroup 
)

Produces a group by excluding ranges of processes from an existing group.

Parameters
groupgroup
nnumber of triplets in array ranges
rangesa one-dimensional array of integer triplets of the form (first rank, last rank, stride), indicating the ranks in group of processes to be excluded from the output group newgroup
newgroupnew group derived from above, preserving the order in group
Returns
MPI status

◆ MPI_Group_range_incl()

int MPI_Group_range_incl ( MPI_Group  group,
int  n,
int  ranges[][3],
MPI_Group newgroup 
)

Creates a new group from ranges of ranks in an existing group.

Parameters
groupgroup
nnumber of triplets in array ranges
rangesa one-dimensional array of integer triplets, of the form (first rank, last rank, stride) indicating ranks in group or processes to be included in newgroup.
newgroupnew group derived from above, in the order defined by ranges
Returns
MPI status

◆ MPI_Group_rank()

int MPI_Group_rank ( MPI_Group  group,
int *  rank 
)

Returns the rank of this process in the given group.

Parameters
groupgroup
rankrank of the calling process in group, or MPI_UNDEFINED if the process is not a member
Returns
MPI status

◆ MPI_Group_size()

int MPI_Group_size ( MPI_Group  group,
int *  size 
)

Returns the size of a group.

Parameters
groupgroup
sizenumber of processes in the group
Returns
MPI status

◆ MPI_Group_translate_ranks()

int MPI_Group_translate_ranks ( MPI_Group  group1,
int  n,
const int *  ranks1,
MPI_Group  group2,
int *  ranks2 
)

Maps the rank of a set of processes in group1 to their rank in group2.

Parameters
group1group
nnumber of ranks in ranks1 and ranks2 arrays
ranks1array of zero or more valid ranks in group1
group2group
ranks2array of corresponding ranks in group2
Returns
MPI status

◆ MPI_Group_union()

int MPI_Group_union ( MPI_Group  group1,
MPI_Group  group2,
MPI_Group newgroup 
)

Produces a group by combining two groups.

Parameters
group1first group
group2second group
newgroupunion group
Returns
MPI status