|
PEARL
Parallel Event Access and Replay Library
|
Stores information related to an MPI communicator. More...
#include <pearl/MpiComm.h>
Public Member Functions | |
| MPI_Comm | getComm () const |
| Get MPI communicator handle. | |
| MpiComm * | duplicate () const |
Constructors & destructor | |
| MpiComm (IdType id, const String &name, const MpiGroup &group, MpiComm *parent) | |
| Constructor. | |
| virtual | ~MpiComm () |
| Destructor. | |
| MpiComm (const MpiComm &comm) | |
| Copy constructor. | |
Instances of the MpiComm class provide information about MPI communicators. In addition to the functionality of the base class Communicator, they also provide a "real" MPI communicator handle resembling the one used in the target application.
| pearl::MpiComm::MpiComm | ( | IdType | id, |
| const String & | name, | ||
| const MpiGroup & | group, | ||
| MpiComm * | parent | ||
| ) |
Creates a new MPI communicator definition instance and initializes it with the given values.
| id | Global communicator identifier |
| name | Communicator name |
| group | Associated process group object |
| parent | Parent communicator (NULL for root communicators or when this information is not available) |
| virtual pearl::MpiComm::~MpiComm | ( | ) | [virtual] |
Releases all allocated resources and destroys the instance.
| pearl::MpiComm::MpiComm | ( | const MpiComm & | comm | ) | [protected] |
Copies the given instance and duplicates the associated MPI communicator handle using MPI_Comm_dup. It is 'protected' to prevent accidental invocation; users need to call MpiComm::duplicate() explicitly to create a communicator copy.
| comm | MPI communicator definition to duplicate |
| MpiComm* pearl::MpiComm::duplicate | ( | ) | const |
| MPI_Comm pearl::MpiComm::getComm | ( | ) | const |
Returns the MPI communicator handle associated with this communicator object.
![]() |
Copyright © 1998–2014 Forschungszentrum Jülich GmbH,
Jülich Supercomputing Centre
Copyright © 2009–2014 German Research School for Simulation Sciences GmbH, Laboratory for Parallel Programming |