| MPI_COMM_TEST_INTER(comm, flag) | |
| IN comm | communicator (handle) |
| OUT flag | (logical) |
int MPI_Comm_test_inter(MPI_Comm comm, int *flag)
MPI_COMM_TEST_INTER(COMM, FLAG, IERROR)
INTEGER COMM, IERROR
LOGICAL FLAG
This local routine allows the calling process to determine if a communicator is an inter-communicator or an intra-communicator. It returns true if it is an inter-communicator, otherwise false.
When an inter-communicator is used as an input argument to the communicator accessors described above under intra-communication, the following table describes behavior.
| 2|c| MPI_COMM_* Function Behavior | |
| 2|c|(in Inter-Communication Mode) | |
| MPI_COMM_SIZE | returns the size of the local group. |
| MPI_COMM_GROUP | returns the local group. |
| MPI_COMM_RANK | returns the rank in the local group |
The following accessors provide consistent access to the remote group of an inter-communicator:
The following are all local operations.
| MPI_COMM_REMOTE_SIZE(comm, size) | |
| IN comm | inter-communicator (handle) |
| OUT size | number of processes in the remote group of comm (integer) |
int MPI_Comm_remote_size(MPI_Comm comm, int *size)
MPI_COMM_REMOTE_SIZE(COMM, SIZE, IERROR)
INTEGER COMM, SIZE, IERROR
| MPI_COMM_REMOTE_GROUP(comm, group) | |
| IN comm | inter-communicator (handle) |
| OUT group | remote group corresponding to comm (handle) |
int MPI_Comm_remote_group(MPI_Comm comm, MPI_Group *group)
MPI_COMM_REMOTE_GROUP(COMM, GROUP, IERROR)
INTEGER COMM, GROUP, IERROR
Rationale.
Symmetric access to both the local and remote groups of an inter-communicator
is important, so this function, as well as MPI_COMM_REMOTE_SIZE have
been provided.
( End of rationale.)