mpi_comms_t Derived Type

type, public :: mpi_comms_t

Container for MPI communicators

This type bundles all MPI communicators needed by the application. Currently supports world and node communicators, but can be extended to support team-based parallelism patterns.


Inherits

type~~mpi_comms_t~~InheritsGraph type~mpi_comms_t mpi_comms_t comm_t comm_t type~mpi_comms_t->comm_t world_comm, node_comm

Inherited by

type~~mpi_comms_t~~InheritedByGraph type~mpi_comms_t mpi_comms_t type~resources_t resources_t type~resources_t->type~mpi_comms_t mpi_comms type~many_body_expansion_t many_body_expansion_t type~many_body_expansion_t->type~resources_t resources type~gmbe_context_t gmbe_context_t type~gmbe_context_t->type~many_body_expansion_t type~mbe_context_t mbe_context_t type~mbe_context_t->type~many_body_expansion_t

Components

Type Visibility Attributes Name Initial
type(comm_t), public :: node_comm

Node-local communicator

type(comm_t), public :: world_comm

Global MPI communicator


Source Code

   type :: mpi_comms_t
      !! Container for MPI communicators
      !!
      !! This type bundles all MPI communicators needed by the application.
      !! Currently supports world and node communicators, but can be extended
      !! to support team-based parallelism patterns.
      type(comm_t) :: world_comm       !! Global MPI communicator
      type(comm_t) :: node_comm        !! Node-local communicator
      ! Future extensions:
      ! type(comm_t) :: team_comm           !! Intra-team communicator
      ! type(comm_t) :: team_worker_comm    !! Team workers (excluding leader)
      ! type(comm_t) :: inter_team_comm     !! Cross-team communicator
      ! type(comm_t) :: team_leaders_comm   !! Team leaders only
   end type mpi_comms_t