OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
Public Member Functions | Private Attributes | List of all members
CommSplitter< Strategy_t > Class Template Reference

#include <CommSplitter.h>

Inherits Strategy_t.

Public Member Functions

 CommSplitter (CmdArguments_t args, MPI_Comm comm=MPI_COMM_WORLD)
 
virtual ~CommSplitter ()
 
bool isOptimizer () const
 
bool isWorker () const
 
bool isPilot () const
 
MPI_Comm mpiComm () const
 
int globalRank () const
 
int pilotRank () const
 
int getLeader () const
 
int getNrWorkerGroups () const
 
Comm::Bundle_t getBundle () const
 construct comm bundle and return More...
 

Private Attributes

MPI_Comm world_comm_
 
MPI_Group world_group_
 
int global_rank_
 global MPI PID More...
 
MPI_Comm my_worker_comm_
 
MPI_Comm my_opt_comm_
 
MPI_Comm my_coworker_comm_
 
MPI_Comm my_comm_world_
 
int poller_local_pid_
 local (wrt. the communicator group) rank of the master/pilot process More...
 

Detailed Description

template<class Strategy_t>
class CommSplitter< Strategy_t >

Definition at line 48 of file CommSplitter.h.

Constructor & Destructor Documentation

◆ CommSplitter()

template<class Strategy_t >
CommSplitter< Strategy_t >::CommSplitter ( CmdArguments_t  args,
MPI_Comm  comm = MPI_COMM_WORLD 
)
inline

◆ ~CommSplitter()

template<class Strategy_t >
virtual CommSplitter< Strategy_t >::~CommSplitter ( )
inlinevirtual

Member Function Documentation

◆ getBundle()

template<class Strategy_t >
Comm::Bundle_t CommSplitter< Strategy_t >::getBundle ( ) const
inline

◆ getLeader()

template<class Strategy_t >
int CommSplitter< Strategy_t >::getLeader ( ) const
inline

Definition at line 97 of file CommSplitter.h.

◆ getNrWorkerGroups()

template<class Strategy_t >
int CommSplitter< Strategy_t >::getNrWorkerGroups ( ) const
inline

Definition at line 99 of file CommSplitter.h.

◆ globalRank()

template<class Strategy_t >
int CommSplitter< Strategy_t >::globalRank ( ) const
inline

Definition at line 95 of file CommSplitter.h.

References CommSplitter< Strategy_t >::global_rank_.

◆ isOptimizer()

template<class Strategy_t >
bool CommSplitter< Strategy_t >::isOptimizer ( ) const
inline

Definition at line 90 of file CommSplitter.h.

References OPTIMIZER.

◆ isPilot()

template<class Strategy_t >
bool CommSplitter< Strategy_t >::isPilot ( ) const
inline

Definition at line 92 of file CommSplitter.h.

References POLLER.

◆ isWorker()

template<class Strategy_t >
bool CommSplitter< Strategy_t >::isWorker ( ) const
inline

Definition at line 91 of file CommSplitter.h.

References WORKER.

◆ mpiComm()

template<class Strategy_t >
MPI_Comm CommSplitter< Strategy_t >::mpiComm ( ) const
inline

Definition at line 94 of file CommSplitter.h.

References CommSplitter< Strategy_t >::world_comm_.

◆ pilotRank()

template<class Strategy_t >
int CommSplitter< Strategy_t >::pilotRank ( ) const
inline

Definition at line 96 of file CommSplitter.h.

Member Data Documentation

◆ global_rank_

template<class Strategy_t >
int CommSplitter< Strategy_t >::global_rank_
private

global MPI PID

Definition at line 127 of file CommSplitter.h.

Referenced by CommSplitter< Strategy_t >::CommSplitter(), and CommSplitter< Strategy_t >::globalRank().

◆ my_comm_world_

template<class Strategy_t >
MPI_Comm CommSplitter< Strategy_t >::my_comm_world_
private

◆ my_coworker_comm_

template<class Strategy_t >
MPI_Comm CommSplitter< Strategy_t >::my_coworker_comm_
private

◆ my_opt_comm_

template<class Strategy_t >
MPI_Comm CommSplitter< Strategy_t >::my_opt_comm_
private

◆ my_worker_comm_

template<class Strategy_t >
MPI_Comm CommSplitter< Strategy_t >::my_worker_comm_
private

◆ poller_local_pid_

template<class Strategy_t >
int CommSplitter< Strategy_t >::poller_local_pid_
private

local (wrt. the communicator group) rank of the master/pilot process

Definition at line 136 of file CommSplitter.h.

◆ world_comm_

template<class Strategy_t >
MPI_Comm CommSplitter< Strategy_t >::world_comm_
private

◆ world_group_

template<class Strategy_t >
MPI_Group CommSplitter< Strategy_t >::world_group_
private

The documentation for this class was generated from the following file: