MPI implementation of the PstreamImpl abstract base class. More...
#include <mpiPstream/mpiPstreamImpl.H>
MPI implementation of the PstreamImpl abstract base class.
Definition at line 55 of file mpiPstreamImpl.H.
Public Member Functions | |
TypeName ("mpiPstreamImpl") | |
mpiPstreamImpl () | |
Construct null.
| |
virtual void | addValidParOptions (HashTable< string > &validParOptions) |
Add the valid option this type of communications library.
| |
virtual bool | init (int &argc, char **&argv, int &myProcNo_, List< int > &procIDs_, bool &isParallel) |
Initialisation function called from main.
| |
virtual void | exit (int errnum) |
Exit program.
| |
virtual void | abort () |
Abort program.
| |
void | reduce (scalar &Value, const sumOp< scalar > &bop) |
Reduce implementation for scalars (.
|
mpiPstreamImpl | ( | ) | [inline]
|
Construct null.
Definition at line 75 of file mpiPstreamImpl.H.
TypeName | ( | "mpiPstreamImpl" | ) |
Add the valid option this type of communications library.
adds/requires on the command line
Implements PstreamImpl.
Definition at line 62 of file mpiPstreamImpl.C.
References HashTable< T, Key, Hash >::insert().
bool init | ( | int & | argc, |
char **& | argv, | ||
int & | myProcNo_, | ||
List< int > & | procIDs_, | ||
bool & | isParallel | ||
) | [virtual]
|
Initialisation function called from main.
Spawns slave processes and initialises inter-communication
Implements PstreamImpl.
Definition at line 74 of file mpiPstreamImpl.C.
References Foam::abort(), Foam::FatalError, FatalErrorIn, forAll, Foam::getEnv(), PstreamImpl::initCommunicationSchedule(), and List< T >::setSize().
void exit | ( | int | errnum ) | [virtual]
|
Exit program.
Implements PstreamImpl.
Definition at line 133 of file mpiPstreamImpl.C.
References Foam::exit().
void abort | ( | ) | [virtual]
|
void reduce | ( | scalar & | Value, |
const sumOp< scalar > & | bop | ||
) | [virtual]
|
Reduce implementation for scalars (.
Implements PstreamImpl.
Definition at line 159 of file mpiPstreamImpl.C.
References Foam::abort(), Foam::FatalError, FatalErrorIn, Pstream::firstSlave(), Pstream::lastSlave(), Pstream::master(), Pstream::masterNo(), Pstream::msgType(), Pstream::nProcs(), Pstream::nProcsSimpleSum, Pstream::parRun(), Pstream::procID(), and Foam::sum().