An initial intra-communicator MPI_COMM_WORLD of all processes the
local process can communicate with after initialization (itself included) is
defined once MPI_INIT
or MPI_INIT_THREAD
has been called. In addition,
the communicator MPI_COMM_SELF is provided, which includes
only the process itself.
The predefined constant
MPI_COMM_NULL is the value used for invalid communicator handles.
In a static-process-model implementation of MPI, all processes that
participate in the computation are available after MPI is initialized. For
this case, MPI_COMM_WORLD is a communicator of all processes
available for the computation; this communicator has the same value in all
processes. In an implementation of MPI where processes can dynamically join
an MPI execution, it may be the case that a process starts an MPI computation
without having access to all other processes. In such situations,
MPI_COMM_WORLD is a communicator incorporating all processes with
which the joining process can immediately communicate. Therefore,
MPI_COMM_WORLD may simultaneously
represent disjoint groups
in different processes.
All MPI implementations are required to provide the MPI_COMM_WORLD
communicator. It cannot be deallocated during the life of a process. The
group corresponding to this communicator does not appear as a pre-defined
constant, but it may be accessed using MPI_COMM_GROUP (see below).
MPI does not specify the correspondence between the process rank in
MPI_COMM_WORLD and its (machine-dependent) absolute address.
Neither does MPI specify the function of the host process, if any.
Other implementation-dependent, predefined communicators may also be
provided.
![]()
![]()
![]()
Up: Basic Concepts
Next: Group Management
Previous: Intra-Communicators
Return to MPI-2.1 Standard Index
Return to MPI Forum Home Page
MPI-2.0 of July 1, 2008
HTML Generated on July 6, 2008