|
Teuchos - Trilinos Tools Package Version of the Day
|
Concrete communicator subclass based on MPI. More...
#include <Teuchos_DefaultMpiComm.hpp>
Public Member Functions | |
Constructors | |
| MpiComm (const RCP< const OpaqueWrapper< MPI_Comm > > &rawMpiComm) | |
| Construct given a wrapped MPI_Comm oqaque object. | |
| MpiComm (const MpiComm< Ordinal > &other) | |
| Construct a communicator with a new context with the same properties as the original. | |
| RCP< const OpaqueWrapper < MPI_Comm > > | getRawMpiComm () const |
Return the embedded wrapped opaque MPI_Comm object. | |
Overridden from Comm | |
| virtual int | getRank () const |
| | |
| virtual int | getSize () const |
| | |
| virtual void | barrier () const |
| | |
| virtual void | broadcast (const int rootRank, const Ordinal bytes, char buffer[]) const |
| | |
| virtual void | gatherAll (const Ordinal sendBytes, const char sendBuffer[], const Ordinal recvBytes, char recvBuffer[]) const |
| | |
| virtual void | reduceAll (const ValueTypeReductionOp< Ordinal, char > &reductOp, const Ordinal bytes, const char sendBuffer[], char globalReducts[]) const |
| | |
| virtual void | reduceAllAndScatter (const ValueTypeReductionOp< Ordinal, char > &reductOp, const Ordinal sendBytes, const char sendBuffer[], const Ordinal recvCounts[], char myGlobalReducts[]) const |
| | |
| virtual void | scan (const ValueTypeReductionOp< Ordinal, char > &reductOp, const Ordinal bytes, const char sendBuffer[], char scanReducts[]) const |
| | |
| virtual void | send (const Ordinal bytes, const char sendBuffer[], const int destRank) const |
| | |
| virtual int | receive (const int sourceRank, const Ordinal bytes, char recvBuffer[]) const |
| | |
| virtual void | readySend (const ArrayView< const char > &sendBuffer, const int destRank) const |
| | |
| virtual RCP< CommRequest > | isend (const ArrayView< const char > &sendBuffer, const int destRank) const |
| | |
| virtual RCP< CommRequest > | ireceive (const ArrayView< char > &Buffer, const int sourceRank) const |
| | |
| virtual void | waitAll (const ArrayView< RCP< CommRequest > > &requests) const |
| | |
| virtual void | wait (const Ptr< RCP< CommRequest > > &request) const |
| | |
| virtual RCP< Comm< Ordinal > > | duplicate () const |
| | |
| virtual RCP< Comm< Ordinal > > | split (const int color, const int key) const |
| | |
| virtual RCP< Comm< Ordinal > > | createSubcommunicator (const ArrayView< const int > &ranks) const |
| | |
Overridden from Describable | |
| std::string | description () const |
| | |
Related Functions | |
(Note that these are not member functions.) | |
| template<typename Ordinal > | |
| RCP< MpiComm< Ordinal > > | createMpiComm (const RCP< const OpaqueWrapper< MPI_Comm > > &rawMpiComm) |
Helper function that creates a dynamically allocated MpiComm object or returns Teuchos::null to correctly represent a null communicator. | |
Concrete communicator subclass based on MPI.
Assertions:
getRawMpiComm().get()!=NULL && *getRawMpiComm()!=MPI_COMM_NULL getSize() > 0 0 <= getRank() && getRank() < getSize() ToDo: Finish documentation!
Definition at line 135 of file Teuchos_DefaultMpiComm.hpp.
| Teuchos::MpiComm< Ordinal >::MpiComm | ( | const RCP< const OpaqueWrapper< MPI_Comm > > & | rawMpiComm | ) |
Construct given a wrapped MPI_Comm oqaque object.
Preconditions:
rawMpiComm.get()!=NULL && *rawMpiComm != MPI_COMM_NULL Definition at line 321 of file Teuchos_DefaultMpiComm.hpp.
| Teuchos::MpiComm< Ordinal >::MpiComm | ( | const MpiComm< Ordinal > & | other | ) |
Construct a communicator with a new context with the same properties as the original.
The newly constructed communicator will have a duplicate communication space that has the same properties (e.g. processes, attributes, topologies) as the input communicator.
| other | The communicator to copy from. |
Preconditions:
other.getRawMpiComm().get() != NULL && *other.getRawMpiComm() != NULL Definition at line 333 of file Teuchos_DefaultMpiComm.hpp.
| RCP<const OpaqueWrapper<MPI_Comm> > Teuchos::MpiComm< Ordinal >::getRawMpiComm | ( | ) | const [inline] |
Return the embedded wrapped opaque MPI_Comm object.
Definition at line 170 of file Teuchos_DefaultMpiComm.hpp.
| int Teuchos::MpiComm< Ordinal >::getRank | ( | ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 359 of file Teuchos_DefaultMpiComm.hpp.
| int Teuchos::MpiComm< Ordinal >::getSize | ( | ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 366 of file Teuchos_DefaultMpiComm.hpp.
| void Teuchos::MpiComm< Ordinal >::barrier | ( | ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 373 of file Teuchos_DefaultMpiComm.hpp.
| void Teuchos::MpiComm< Ordinal >::broadcast | ( | const int | rootRank, |
| const Ordinal | bytes, | ||
| char | buffer[] | ||
| ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 383 of file Teuchos_DefaultMpiComm.hpp.
| void Teuchos::MpiComm< Ordinal >::gatherAll | ( | const Ordinal | sendBytes, |
| const char | sendBuffer[], | ||
| const Ordinal | recvBytes, | ||
| char | recvBuffer[] | ||
| ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 395 of file Teuchos_DefaultMpiComm.hpp.
| void Teuchos::MpiComm< Ordinal >::reduceAll | ( | const ValueTypeReductionOp< Ordinal, char > & | reductOp, |
| const Ordinal | bytes, | ||
| const char | sendBuffer[], | ||
| char | globalReducts[] | ||
| ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 415 of file Teuchos_DefaultMpiComm.hpp.
| void Teuchos::MpiComm< Ordinal >::reduceAllAndScatter | ( | const ValueTypeReductionOp< Ordinal, char > & | reductOp, |
| const Ordinal | sendBytes, | ||
| const char | sendBuffer[], | ||
| const Ordinal | recvCounts[], | ||
| char | myGlobalReducts[] | ||
| ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 435 of file Teuchos_DefaultMpiComm.hpp.
| void Teuchos::MpiComm< Ordinal >::scan | ( | const ValueTypeReductionOp< Ordinal, char > & | reductOp, |
| const Ordinal | bytes, | ||
| const char | sendBuffer[], | ||
| char | scanReducts[] | ||
| ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 501 of file Teuchos_DefaultMpiComm.hpp.
| void Teuchos::MpiComm< Ordinal >::send | ( | const Ordinal | bytes, |
| const char | sendBuffer[], | ||
| const int | destRank | ||
| ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 518 of file Teuchos_DefaultMpiComm.hpp.
| int Teuchos::MpiComm< Ordinal >::receive | ( | const int | sourceRank, |
| const Ordinal | bytes, | ||
| char | recvBuffer[] | ||
| ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 579 of file Teuchos_DefaultMpiComm.hpp.
| void Teuchos::MpiComm< Ordinal >::readySend | ( | const ArrayView< const char > & | sendBuffer, |
| const int | destRank | ||
| ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 548 of file Teuchos_DefaultMpiComm.hpp.
| RCP< CommRequest > Teuchos::MpiComm< Ordinal >::isend | ( | const ArrayView< const char > & | sendBuffer, |
| const int | destRank | ||
| ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 614 of file Teuchos_DefaultMpiComm.hpp.
| RCP< CommRequest > Teuchos::MpiComm< Ordinal >::ireceive | ( | const ArrayView< char > & | Buffer, |
| const int | sourceRank | ||
| ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 635 of file Teuchos_DefaultMpiComm.hpp.
| void Teuchos::MpiComm< Ordinal >::waitAll | ( | const ArrayView< RCP< CommRequest > > & | requests | ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 656 of file Teuchos_DefaultMpiComm.hpp.
| void Teuchos::MpiComm< Ordinal >::wait | ( | const Ptr< RCP< CommRequest > > & | request | ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 688 of file Teuchos_DefaultMpiComm.hpp.
| RCP< Comm< Ordinal > > Teuchos::MpiComm< Ordinal >::duplicate | ( | ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 710 of file Teuchos_DefaultMpiComm.hpp.
| RCP< Comm< Ordinal > > Teuchos::MpiComm< Ordinal >::split | ( | const int | color, |
| const int | key | ||
| ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 718 of file Teuchos_DefaultMpiComm.hpp.
| RCP< Comm< Ordinal > > Teuchos::MpiComm< Ordinal >::createSubcommunicator | ( | const ArrayView< const int > & | ranks | ) | const [virtual] |
Implements Teuchos::Comm< Ordinal >.
Definition at line 741 of file Teuchos_DefaultMpiComm.hpp.
| std::string Teuchos::MpiComm< Ordinal >::description | ( | ) | const [virtual] |
Reimplemented from Teuchos::Describable.
Definition at line 773 of file Teuchos_DefaultMpiComm.hpp.
| RCP< MpiComm< Ordinal > > createMpiComm | ( | const RCP< const OpaqueWrapper< MPI_Comm > > & | rawMpiComm | ) | [related] |
Helper function that creates a dynamically allocated MpiComm object or returns Teuchos::null to correctly represent a null communicator.
Postconditions: [rawMpiComm.get()!=NULL && *rawMpiComm!=MPI_COMM_NULL] return.get()!=NULL [rawMpiComm.get()==NULL || *rawMpiComm==MPI_COMM_NULL] return.get()==NULL
1.7.4