This section provides functions that establish communication between two sets of MPI processes that do not share a communicator.
Some situations in which these functions are useful are:
Establishing contact between two groups of processes that do not share an existing communicator is a collective but asymmetric process. One group of processes indicates its willingness to accept connections from other groups of processes. We will call this group the (parallel) server, even if this is not a client/server type of application. The other group connects to the server; we will call it the client.
[] Advice to users.
While the names client and server are used throughout
this section, MPI does not guarantee the traditional robustness
of client server systems. The functionality described in this
section is intended to allow two cooperating parts of the
same application to communicate with one another. For instance,
a client that gets a segmentation fault
and dies, or one that doesn't participate in a collective
operation may cause a server to crash or hang.
( End of advice to users.)