Communicators

Communicators

An MPI communicator specifies the communication context for a communication operation. In particular, it specifies the set of processes which share the context, and assigns each each process a unique rank (see MPI.Comm_rank) taking an integer value in 0:n-1, where n is the number of processes in the communicator (see MPI.Comm_size.

Constants

MPI.COMM_WORLDConstant.
MPI.COMM_WORLD

A communicator containing all processes with which the local rank can communicate at initialization. In a typical "static-process" model, this will be all processes.

source
MPI.COMM_SELFConstant.
MPI.COMM_SELF

A communicator containing only the local process.

source

Functions

MPI.Comm_dupFunction.
Comm_dup(comm::Comm)

External links

source
MPI.Comm_get_parentFunction.
Comm_get_parent()

External links

source
MPI.Comm_rankFunction.
Comm_rank(comm::Comm)

The rank of the process in the particular communicator's group.

Returns an integer in the range 0:MPI.Comm_size()-1.

See also

External links

source
MPI.Comm_sizeFunction.
Comm_size(comm::Comm)

The number of processes involved in communicator.

See also

External links

source
MPI.Comm_spawnFunction.
Comm_spawn(command, argv::Vector{String}, nprocs::Integer, comm::Comm[, errors::Vector{Cint}]; kwargs...)

External links

source
MPI.Comm_splitFunction.
Comm_split(comm::Comm, color::Integer, key::Integer)

External links

source
MPI.Comm_split_typeFunction.
Comm_split_type(comm::Comm, split_type::Integer, key::Integer; kwargs...)

External links

source
MPI.Intercomm_mergeFunction.
Intercomm_merge(intercomm::Comm, flag::Bool)

External links

source
MPI.universe_sizeFunction.
universe_size()

The total number of available slots, or nothing if it is not defined. This is determined by the MPI_UNIVERSE_SIZE attribute of COMM_WORLD.

This is typically dependent on the MPI implementation: for MPICH-based implementations, this is specified by the -usize argument. OpenMPI defines a default value based on the number of processes available.

source