mpi_types_mod module reference¶
Defines a derived type with procedures and parameters relating to components of CanESM5.
Data Types¶
Define the task group properties for a given component. |
Functions/Subroutines¶
Routine that populates a group_info structure with information about members of a given component. |
|
Broadcast group information to all processes. |
|
Define the assignment operator for the group type by copying all internal fields. |
Detailed Description¶
Defines a derived type with procedures and parameters relating to components of CanESM5.
Type Documentation¶
-
type
mpi_types_mod/group_info_t¶ Define the task group properties for a given component.
- Type fields
%communicator[integer(kind=mpi_integer_kind),private] :: The communicator, NULL on ranks not part of the group.%id[integer(kind=mpi_integer_kind),private] :: The group id based on the enums.%leader[integer(kind=mpi_integer_kind),private] :: The leader of the group based on MPI_COMM_WORLD rank.%global_ranks[integer(kind=mpi_integer_kind)(:),allocatable, private] :: Ranks within the MPI_COMM_WORLD.%initialize[procedure,private]%broadcast[procedure,private]%assignment_group[procedure,private]%assignment[generic,private]
Function/Subroutine Documentation¶
-
subroutine
mpi_types_mod/initialize_group(self, group_comm, group_id)¶ Routine that populates a group_info structure with information about members of a given component.
- Parameters
self :: [inout] The instance of
group_info_t()to be populatedto be populatedgroup_comm :: [in] The group communicator
group_id :: [in] The group identifier
-
subroutine
mpi_types_mod/broadcast_group(self, broadcaster)¶ Broadcast group information to all processes.
- Parameters
self :: [inout] The specific instance of
group_info_t()broadcaster :: [in] The rank to broadcast information from
-
subroutine
mpi_types_mod/assignment_group(other, self)¶ Define the assignment operator for the group type by copying all internal fields.
- Parameters
other :: [out] The group to be copied to
self :: [in] The group to be copied