Module topology

Source
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.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.6: Inter-communication
  • 6.7: Caching
  • 6.8: Naming objects
  • 7: Process topologies
  • Parts of sections: 8, 10, 12

Modules§

traits
Topology traits

Structs§

AnyProcess
Identifies an arbitrary process that is a member of a certain communicator, e.g. for use as a Source in point to point communication.
CartesianCommunicator
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.
CartesianLayout
Contains arrays describing the layout of the CartesianCommunicator.
Color
A color used in a communicator split
DistributedGraphCommunicator
Unimplemented
GraphCommunicator
Unimplemented
Process
Identifies a process by its Rank within a certain communicator.
SystemCommunicator
A built-in communicator, e.g. MPI_COMM_WORLD
SystemGroup
A built-in group, e.g. MPI_GROUP_EMPTY
UserCommunicator
A user-defined communicator
UserGroup
A user-defined group of processes

Enums§

CommunicatorRelation
The relation between two communicators.
GroupRelation
The relation between two groups.
IntoTopology
An enum indirecting between different concrete communicator topology types
Topology
An enum describing the topology of a communicator

Traits§

AsCommunicator
Something that has a communicator associated with it
Communicator
Communicators are contexts for communication
Group
Groups are collections of parallel processes

Type Aliases§

Key
A key used when determining the rank order of processes after a communicator split.
Rank
Identifies a certain process within a communicator.