Expand description
Organizing processes as groups and communicators
Processes are organized in communicators. All parallel processes initially partaking in
the computation are organized in a context called the ‘world communicator’ which is available
as a property of the Universe
. From the world communicator, other communicators can be
created. Processes can be addressed via their Rank
within a specific communicator. This
information is encapsulated in a Process
.
§Unfinished features
- 6.3: Group management
- 6.3.2: Constructors,
MPI_Group_range_incl()
,MPI_Group_range_excl()
- 6.3.2: Constructors,
- 6.4: Communicator management
- 6.4.2: Constructors,
MPI_Comm_dup_with_info()
,MPI_Comm_idup()
,MPI_Comm_split_type()
- 6.4.4: Info,
MPI_Comm_set_info()
,MPI_Comm_get_info()
- 6.4.2: Constructors,
- 6.6: Inter-communication
- 6.7: Caching
- 6.8: Naming objects
- 7: Process topologies
- Parts of sections: 8, 10, 12
Modules§
- Topology traits
Structs§
- Identifies an arbitrary process that is a member of a certain communicator, e.g. for use as a
Source
in point to point communication. - A
CartesianCommunicator
is an MPI communicator object where ranks are laid out in an n-dimensional cartesian space. This gives ranks neighbors in each of those dimensions, and MPI is able to optimize the layout of these ranks to improve physical locality. - Contains arrays describing the layout of the
CartesianCommunicator
. - A color used in a communicator split
- Unimplemented
- Unimplemented
- A communicator for inter-communication, which represents a point-to-point communication between disjoint groups
- Identifies a process by its
Rank
within a certain communicator. - A simple communicator, either a system-defined communicator like
MPI_COMM_WORLD
or a user-defined intra-communicator without a special topology. - A built-in group, e.g.
MPI_GROUP_EMPTY
- A user-defined group of processes
Enums§
- The relation between two communicators.
- The relation between two groups.
- An enum indirecting between different concrete communicator topology types
- When an intercommunicator is merged, the caller chooses how to order the two groups. If every rank in one group uses
Low
and every rank in the other useHigh
, then they will be ordered accordingly. If both groups use the same value, the order in the merged communicator is arbitrary. - An enum describing the topology of a communicator
Traits§
- Methods that would otherwise block object safety.
- Something that has a communicator associated with it
- Communicators are contexts for communication
- Groups are collections of parallel processes
Type Aliases§
- A key used when determining the rank order of processes after a communicator split.
- Identifies a certain process within a communicator.