40 <<
"The dummy Pstream library cannot be used in parallel mode"
50 <<
"The dummy Pstream library cannot be used in parallel mode"
58bool Foam::UPstream::setSharedMemoryCommunicators()
84void Foam::UPstream::allocateCommunicatorComponents
86 const label parentIndex,
92void Foam::UPstream::dupCommunicatorComponents
94 const label parentIndex,
99void Foam::UPstream::splitCommunicatorComponents
101 const label parentIndex,
109void Foam::UPstream::freeCommunicatorComponents(
const label index)
129 const int communicator,
137std::pair<int,int64_t>
141 const int fromProcNo,
143 const int communicator
A HashTable similar to std::unordered_map.
An opaque wrapper for MPI_Request with a vendor-independent representation without any <mpi....
Wrapper for internally indexed communicator label. Always invokes UPstream::allocateCommunicatorCompo...
static std::pair< int, int64_t > probeMessage(const UPstream::commsTypes commsType, const int fromProcNo, const int tag=UPstream::msgType(), const int communicator=worldComm)
Probe for an incoming message.
static int wait_done(const int fromProcNo, const int communicator, const int tag=UPstream::msgType()+1970)
Impose a point-to-point synchronisation barrier by receiving a zero-byte "done" message from given ra...
static bool init(int &argc, char **&argv, const bool needsThread)
Initialisation function called from main.
commsTypes
Communications types.
static bool initNull()
Special purpose initialisation function.
static void shutdown(int errNo=0)
Shutdown (finalize) MPI as required.
static void send_done(const int toProcNo, const int communicator, const int tag=UPstream::msgType()+1970)
Impose a point-to-point synchronisation barrier by sending a zero-byte "done" message to given rank.
static void barrier(const int communicator, UPstream::Request *req=nullptr)
Impose a synchronisation barrier (optionally non-blocking).
static void exit(int errNo=1)
Shutdown (finalize) MPI as required and exit program with errNo.
commsTypes commsType() const noexcept
Get the communications type of the stream.
static void abort(int errNo=1)
Call MPI_Abort with no other checks or cleanup.
static void addValidParOptions(HashTable< string > &validParOptions)
Add the valid option this type of communications library adds/requires on the command line.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
#define WarningInFunction
Report a warning using Foam::Warning.
Ostream & endl(Ostream &os)
Add newline and flush stream.
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
errorManipArg< error, int > exit(error &err, const int errNo=1)