#include <EpetraExt_ZoltanMpiDistributor.h>
Inheritance diagram for EpetraExt::ZoltanMpiDistributor:

| ZoltanMpiDistributor (const ZoltanMpiComm &Comm) | |
| Default Constructor. | |
| ZoltanMpiDistributor (const ZoltanMpiDistributor &Distributor) | |
| Copy Constructor. | |
| Epetra_Distributor * | Clone () |
| Clone method. | |
| virtual | ~ZoltanMpiDistributor () |
| Epetra_Comm Destructor. | |
| int | CreateFromSends (const int &NumExportIDs, const int *ExportPIDs, bool Deterministic, int &NumRemoteIDs) |
| Create Distributor object using list of process IDs to which we export. | |
| int | CreateFromRecvs (const int &NumRemoteIDs, const int *RemoteGIDs, const int *RemotePIDs, bool Deterministic, int &NumExportIDs, int *&ExportGIDs, int *&ExportPIDs) |
| Create Distributor object using list of Remote global IDs and corresponding PIDs. | |
| int | Do (char *export_objs, int obj_size, int &len_import_objs, char *&import_objs) |
| Execute plan on buffer of export objects in a single step. | |
| int | DoReverse (char *export_objs, int obj_size, int &len_import_objs, char *&import_objs) |
| Execute reverse of plan on buffer of export objects in a single step. | |
| int | DoPosts (char *export_objs, int obj_size, int &len_import_objs, char *&import_objs) |
| Post buffer of export objects (can do other local work before executing Waits). | |
| int | DoWaits () |
| Wait on a set of posts. | |
| int | DoReversePosts (char *export_objs, int obj_size, int &len_import_objs, char *&import_objs) |
| Do reverse post of buffer of export objects (can do other local work before executing Waits). | |
| int | DoReverseWaits () |
| Wait on a reverse set of posts. | |
| int | Do (char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs) |
| Execute plan on buffer of export objects in a single step (object size may vary). | |
| int | DoReverse (char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs) |
| Execute reverse of plan on buffer of export objects in a single step (object size may vary). | |
| int | DoPosts (char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs) |
| Post buffer of export objects (can do other local work before executing Waits). | |
| int | DoReversePosts (char *export_objs, int obj_size, int *&sizes, int &len_import_objs, char *&import_objs) |
| Do reverse post of buffer of export objects (can do other local work before executing Waits). | |
| void | Print (ostream &os) const |
The Epetra_MpiDistributor class is an MPI implement of Epetra_Distributor that encapsulates the general information and services needed for other Epetra classes to perform gather/scatter operations on a parallel computer. An Epetra_MpiDistributor object is actually produced by calling a method in the Epetra_MpiComm class.
Definition at line 49 of file EpetraExt_ZoltanMpiDistributor.h.
| EpetraExt::ZoltanMpiDistributor::ZoltanMpiDistributor | ( | const ZoltanMpiComm & | Comm | ) |
| EpetraExt::ZoltanMpiDistributor::ZoltanMpiDistributor | ( | const ZoltanMpiDistributor & | Distributor | ) |
| EpetraExt::ZoltanMpiDistributor::~ZoltanMpiDistributor | ( | ) | [virtual] |
| Epetra_Distributor* EpetraExt::ZoltanMpiDistributor::Clone | ( | ) | [inline, virtual] |
Clone method.
Implements Epetra_Distributor.
Definition at line 62 of file EpetraExt_ZoltanMpiDistributor.h.
| int EpetraExt::ZoltanMpiDistributor::CreateFromSends | ( | const int & | NumExportIDs, | |
| const int * | ExportPIDs, | |||
| bool | Deterministic, | |||
| int & | NumRemoteIDs | |||
| ) | [virtual] |
Create Distributor object using list of process IDs to which we export.
Take a list of Process IDs and construct a plan for efficiently scattering to these processes. Return the number of IDs being sent to me.
| NumExportIDs | In Number of IDs that need to be sent from this processor. | |
| ExportPIDs | In List of processors that will get the exported IDs. | |
| Deterministic | In If set to true, communication will be deterministic (repeatable) from call to call. | |
| NumRemoteIDs | Out Number of IDs this processor will be receiving. |
Implements Epetra_Distributor.
| int EpetraExt::ZoltanMpiDistributor::CreateFromRecvs | ( | const int & | NumRemoteIDs, | |
| const int * | RemoteGIDs, | |||
| const int * | RemotePIDs, | |||
| bool | Deterministic, | |||
| int & | NumExportIDs, | |||
| int *& | ExportGIDs, | |||
| int *& | ExportPIDs | |||
| ) | [virtual] |
Create Distributor object using list of Remote global IDs and corresponding PIDs.
Take a list of global IDs and construct a plan for efficiently scattering to these processes. Return the number and list of IDs being sent by me.
| NumRemoteIDs | In Number of IDs this processor will be receiving. | |
| RemoteGIDs | In List of IDs that this processor wants. | |
| RemotePIDs | In List of processors that will send the remote IDs. | |
| Deterministic | In If set to true, communication will be deterministic (repeatable) from call to call. | |
| NumExportIDs | Out Number of IDs that need to be sent from this processor. | |
| ExportPIDs | Out List of processors that will get the exported IDs. |
Implements Epetra_Distributor.
| int EpetraExt::ZoltanMpiDistributor::Do | ( | char * | export_objs, | |
| int | obj_size, | |||
| int & | len_import_objs, | |||
| char *& | import_objs | |||
| ) | [virtual] |
| int EpetraExt::ZoltanMpiDistributor::DoReverse | ( | char * | export_objs, | |
| int | obj_size, | |||
| int & | len_import_objs, | |||
| char *& | import_objs | |||
| ) | [virtual] |
Execute reverse of plan on buffer of export objects in a single step.
Implements Epetra_Distributor.
| int EpetraExt::ZoltanMpiDistributor::DoPosts | ( | char * | export_objs, | |
| int | obj_size, | |||
| int & | len_import_objs, | |||
| char *& | import_objs | |||
| ) | [virtual] |
Post buffer of export objects (can do other local work before executing Waits).
Implements Epetra_Distributor.
| int EpetraExt::ZoltanMpiDistributor::DoWaits | ( | ) | [virtual] |
Wait on a set of posts.
Implements Epetra_Distributor.
Definition at line 179 of file EpetraExt_ZoltanMpiDistributor.cpp.
| int EpetraExt::ZoltanMpiDistributor::DoReversePosts | ( | char * | export_objs, | |
| int | obj_size, | |||
| int & | len_import_objs, | |||
| char *& | import_objs | |||
| ) | [virtual] |
Do reverse post of buffer of export objects (can do other local work before executing Waits).
Implements Epetra_Distributor.
| int EpetraExt::ZoltanMpiDistributor::DoReverseWaits | ( | ) | [virtual] |
Wait on a reverse set of posts.
Implements Epetra_Distributor.
Definition at line 199 of file EpetraExt_ZoltanMpiDistributor.cpp.
| int EpetraExt::ZoltanMpiDistributor::Do | ( | char * | export_objs, | |
| int | obj_size, | |||
| int *& | sizes, | |||
| int & | len_import_objs, | |||
| char *& | import_objs | |||
| ) | [virtual] |
Execute plan on buffer of export objects in a single step (object size may vary).
Implements Epetra_Distributor.
| int EpetraExt::ZoltanMpiDistributor::DoReverse | ( | char * | export_objs, | |
| int | obj_size, | |||
| int *& | sizes, | |||
| int & | len_import_objs, | |||
| char *& | import_objs | |||
| ) | [virtual] |
Execute reverse of plan on buffer of export objects in a single step (object size may vary).
Implements Epetra_Distributor.
| int EpetraExt::ZoltanMpiDistributor::DoPosts | ( | char * | export_objs, | |
| int | obj_size, | |||
| int *& | sizes, | |||
| int & | len_import_objs, | |||
| char *& | import_objs | |||
| ) | [virtual] |
Post buffer of export objects (can do other local work before executing Waits).
Implements Epetra_Distributor.
| int EpetraExt::ZoltanMpiDistributor::DoReversePosts | ( | char * | export_objs, | |
| int | obj_size, | |||
| int *& | sizes, | |||
| int & | len_import_objs, | |||
| char *& | import_objs | |||
| ) | [virtual] |
Do reverse post of buffer of export objects (can do other local work before executing Waits).
Implements Epetra_Distributor.
| void EpetraExt::ZoltanMpiDistributor::Print | ( | ostream & | os | ) | const [virtual] |
1.4.7