#include <Tpetra_Distributor.hpp>
Inheritance diagram for Tpetra::Distributor< OrdinalType >:


Public Member Functions | |
| Distributor (Teuchos::RCP< Comm< OrdinalType, OrdinalType > > const &comm) | |
| Comm Constuctor (default ctr). | |
| Distributor (Distributor< OrdinalType > const &distributor) | |
| Copy Constructor. | |
| ~Distributor () | |
| Destructor. | |
| void | createFromSends (OrdinalType const &numExportIDs, std::vector< OrdinalType > const &exportImageIDs, bool const &deterministic, OrdinalType &numRemoteIDs) |
| Create Distributor object using list of ImageIDs to send to. | |
| void | createFromRecvs (OrdinalType const &numRemoteIDs, std::vector< OrdinalType > const &remoteGIDs, std::vector< OrdinalType > const &remoteImageIDs, bool const &deterministic, OrdinalType &numExportIDs, std::vector< OrdinalType > &exportGIDs, std::vector< OrdinalType > &exportImageIDs) |
| Create Distributor object using list of Image IDs to receive from. | |
| OrdinalType const & | getTotalReceiveLength () const |
| getTotalReceiveLength | |
| OrdinalType const & | getNumReceives () const |
| getNumReceives | |
| OrdinalType const & | getSelfMessage () const |
| getSelfMessage - flag for if we're sending to ourself | |
| OrdinalType const & | getNumSends () const |
| getNumSends | |
| OrdinalType const & | getMaxSendLength () const |
| getMaxSendLength - maximum number of elements we're sending to a remote image | |
|
std::vector< OrdinalType > const & | getImagesFrom () const |
| getImagesFrom - list of images sending elements to us | |
| std::vector< OrdinalType > const & | getLengthsFrom () const |
| getLengthsFrom - number of elements we're receiving from each image | |
|
std::vector< OrdinalType > const & | getImagesTo () const |
| std::vector< OrdinalType > const & | getIndicesTo () const |
| std::vector< OrdinalType > const & | getStartsTo () const |
| std::vector< OrdinalType > const & | getLengthsTo () const |
| Distributor< OrdinalType > const & | getReverse () |
| void | print (ostream &os) const |
| print method inherited from Object | |
| void | printInfo (ostream &os) const |
| printInfo method inherited from Distributor | |
The Distributor class is an interface that encapsulates the general information and services needed for other Tpetra classes to perform gather/scatter operations on a parallel computer.
| void Tpetra::Distributor< OrdinalType >::createFromRecvs | ( | OrdinalType const & | numRemoteIDs, | |
| std::vector< OrdinalType > const & | remoteGIDs, | |||
| std::vector< OrdinalType > const & | remoteImageIDs, | |||
| bool const & | deterministic, | |||
| OrdinalType & | numExportIDs, | |||
| std::vector< OrdinalType > & | exportGIDs, | |||
| std::vector< OrdinalType > & | exportImageIDs | |||
| ) | [inline] |
Create Distributor object using list of Image IDs to receive from.
Take a list of global IDs and construct a plan for efficiently scattering to these images. Return the number and list of IDs being sent by me.
| numRemoteIDs | In Number of IDs this image will be receiving. | |
| remoteGIDs | In List of IDs that this image wants. | |
| remoteImageIDs | In List of images that will send the remote IDs. | |
| deterministic | In No Op. | |
| numExportIDs | Out Number of IDs that need to be sent from this image. | |
| exportGIDs | Out List of IDs that need to be sent from this image. | |
| exportImageIDs | Out List of images that will get the exported IDs. |
| void Tpetra::Distributor< OrdinalType >::createFromSends | ( | OrdinalType const & | numExportIDs, | |
| std::vector< OrdinalType > const & | exportImageIDs, | |||
| bool const & | deterministic, | |||
| OrdinalType & | numRemoteIDs | |||
| ) | [inline] |
Create Distributor object using list of ImageIDs to send to.
Take a list of ImageIDs and construct a plan for efficiently scattering to these images. Return the number of IDs being sent to me.
| numExportIDs | In Number of IDs that need to be sent from this image. | |
| exportImageIDs | In List of images that will get the exported IDs (should be of length numExportIDs). | |
| deterministic | In No Op. | |
| numRemoteIDs | Out Number of IDs this image will be receiving. |
| std::vector<OrdinalType> const& Tpetra::Distributor< OrdinalType >::getIndicesTo | ( | ) | const [inline] |
(Used only if exportImageIDs was not blocked by image.) Gives the order to ** the export buffer, in order to get a version that is sorted by imageID.
| std::vector<OrdinalType> const& Tpetra::Distributor< OrdinalType >::getLengthsFrom | ( | ) | const [inline] |
getLengthsFrom - number of elements we're receiving from each image
We will receive lengthsFrom[i] elements from image imagesFrom[i]
| std::vector<OrdinalType> const& Tpetra::Distributor< OrdinalType >::getLengthsTo | ( | ) | const [inline] |
We will send lengthsTo[i] elements to image imagesTo[i]
| Distributor<OrdinalType> const& Tpetra::Distributor< OrdinalType >::getReverse | ( | ) | [inline] |
Returns a Distributor with a reverse plan of this Distributor's plan Creates the reverse Distributor if this is the first time this function has been called.
| OrdinalType const& Tpetra::Distributor< OrdinalType >::getSelfMessage | ( | ) | const [inline] |
getSelfMessage - flag for if we're sending to ourself
If we are sending any elements to ourself, returns 1. If we aren't, returns 0.
| std::vector<OrdinalType> const& Tpetra::Distributor< OrdinalType >::getStartsTo | ( | ) | const [inline] |
Given an export buffer that contains all of the elements we're sending out, image i's block of elements will start at position startsTo[i]
1.4.7