Teuchos::MPIComm Class Reference

Object representation of an MPI communicator. More...

#include <Teuchos_MPIComm.hpp>

List of all members.

Public Member Functions

 MPIComm ()
 Empty constructor builds an object for MPI_COMM_WORLD.
int getRank () const
 Return process rank.
int getNProc () const
 Return number of processors in the communicator.
void synchronize () const
 Synchronize all the processors in the communicator.
Collective communications
void allToAll (void *sendBuf, int sendCount, int sendType, void *recvBuf, int recvCount, int recvType) const
 All-to-all gather-scatter.
void allToAllv (void *sendBuf, int *sendCount, int *sendDisplacements, int sendType, void *recvBuf, int *recvCount, int *recvDisplacements, int recvType) const
 Variable-length gather-scatter.
void allReduce (void *input, void *result, int inputCount, int type, int op) const
 Do a collective operation, scattering the results to all processors.
void gather (void *sendBuf, int sendCount, int sendType, void *recvBuf, int recvCount, int recvType, int root) const
 Gather to root.
void gatherv (void *sendBuf, int sendCount, int sendType, void *recvBuf, int *recvCount, int *displacements, int recvType, int root) const
 Gather variable-sized arrays to root.
void allGather (void *sendBuf, int sendCount, int sendType, void *recvBuf, int recvCount, int recvType) const
 Gather to all processors.
void allGatherv (void *sendBuf, int sendCount, int sendType, void *recvBuf, int *recvCount, int *recvDisplacements, int recvType) const
 Variable-length gather to all processors.
void bcast (void *msg, int length, int type, int src) const
 Broadcast.

Static Public Member Functions

static MPICommworld ()
 Get an object representing MPI_COMM_WORLD.

Static Public Attributes

Data types
static const int INT = 1
 Integer data type.
static const int FLOAT = 2
 Float data type.
static const int DOUBLE = 3
 Double data type.
static const int CHAR = 4
 Character data type.
Operations
static const int SUM = 5
 Summation operation.
static const int MIN = 6
 Minimize operation.
static const int MAX = 7
 Maximize operation.
static const int PROD = 8
 Dot-product (Multiplication) operation.


Detailed Description

Object representation of an MPI communicator.

At present, groups are not implemented so the only communicator is MPI_COMM_WORLD.

Definition at line 53 of file Teuchos_MPIComm.hpp.


Constructor & Destructor Documentation

MPIComm::MPIComm (  ) 

Empty constructor builds an object for MPI_COMM_WORLD.

Definition at line 49 of file Teuchos_MPIComm.cpp.


Member Function Documentation

MPIComm & MPIComm::world (  )  [static]

Get an object representing MPI_COMM_WORLD.

Definition at line 143 of file Teuchos_MPIComm.cpp.

int Teuchos::MPIComm::getRank (  )  const [inline]

Return process rank.

Definition at line 69 of file Teuchos_MPIComm.hpp.

int Teuchos::MPIComm::getNProc (  )  const [inline]

Return number of processors in the communicator.

Definition at line 72 of file Teuchos_MPIComm.hpp.

void MPIComm::synchronize (  )  const

Synchronize all the processors in the communicator.

Definition at line 150 of file Teuchos_MPIComm.cpp.

void MPIComm::allToAll ( void *  sendBuf,
int  sendCount,
int  sendType,
void *  recvBuf,
int  recvCount,
int  recvType 
) const

All-to-all gather-scatter.

Definition at line 169 of file Teuchos_MPIComm.cpp.

void MPIComm::allToAllv ( void *  sendBuf,
int *  sendCount,
int *  sendDisplacements,
int  sendType,
void *  recvBuf,
int *  recvCount,
int *  recvDisplacements,
int  recvType 
) const

Variable-length gather-scatter.

Definition at line 202 of file Teuchos_MPIComm.cpp.

void MPIComm::allReduce ( void *  input,
void *  result,
int  inputCount,
int  type,
int  op 
) const

Do a collective operation, scattering the results to all processors.

Definition at line 370 of file Teuchos_MPIComm.cpp.

void MPIComm::gather ( void *  sendBuf,
int  sendCount,
int  sendType,
void *  recvBuf,
int  recvCount,
int  recvType,
int  root 
) const

Gather to root.

Definition at line 238 of file Teuchos_MPIComm.cpp.

void MPIComm::gatherv ( void *  sendBuf,
int  sendCount,
int  sendType,
void *  recvBuf,
int *  recvCount,
int *  displacements,
int  recvType,
int  root 
) const

Gather variable-sized arrays to root.

Definition at line 265 of file Teuchos_MPIComm.cpp.

void MPIComm::allGather ( void *  sendBuf,
int  sendCount,
int  sendType,
void *  recvBuf,
int  recvCount,
int  recvType 
) const

Gather to all processors.

Definition at line 291 of file Teuchos_MPIComm.cpp.

void MPIComm::allGatherv ( void *  sendBuf,
int  sendCount,
int  sendType,
void *  recvBuf,
int *  recvCount,
int *  recvDisplacements,
int  recvType 
) const

Variable-length gather to all processors.

Definition at line 319 of file Teuchos_MPIComm.cpp.

void MPIComm::bcast ( void *  msg,
int  length,
int  type,
int  src 
) const

Broadcast.

Definition at line 349 of file Teuchos_MPIComm.cpp.


Member Data Documentation

const int Teuchos::MPIComm::INT = 1 [static]

Integer data type.

Definition at line 128 of file Teuchos_MPIComm.hpp.

const int Teuchos::MPIComm::FLOAT = 2 [static]

Float data type.

Definition at line 130 of file Teuchos_MPIComm.hpp.

const int Teuchos::MPIComm::DOUBLE = 3 [static]

Double data type.

Definition at line 132 of file Teuchos_MPIComm.hpp.

const int Teuchos::MPIComm::CHAR = 4 [static]

Character data type.

Definition at line 134 of file Teuchos_MPIComm.hpp.

const int Teuchos::MPIComm::SUM = 5 [static]

Summation operation.

Definition at line 140 of file Teuchos_MPIComm.hpp.

const int Teuchos::MPIComm::MIN = 6 [static]

Minimize operation.

Definition at line 142 of file Teuchos_MPIComm.hpp.

const int Teuchos::MPIComm::MAX = 7 [static]

Maximize operation.

Definition at line 144 of file Teuchos_MPIComm.hpp.

const int Teuchos::MPIComm::PROD = 8 [static]

Dot-product (Multiplication) operation.

Definition at line 146 of file Teuchos_MPIComm.hpp.


The documentation for this class was generated from the following files:
Generated on Wed May 12 21:24:42 2010 for Teuchos - Trilinos Tools Package by  doxygen 1.4.7