38 <<
"Trying to use the dummy Pstream library." <<
nl
39 <<
"This dummy library cannot be used in parallel mode"
106 memmove(recvData, sendData, sendSize);
112 const char* sendData,
121 memmove(recvData, sendData, recvSize);
125 void Foam::UPstream::allocatePstreamCommunicator
133 void Foam::UPstream::freePstreamCommunicator(
const label)
Inter-processor communication reduction functions.
An STL-conforming hash table.
void deepCopy(const UList< T > &)
Copy elements of the given UList.
Helper class for allocating/freeing communicators.
static bool init(int &argc, char **&argv, const bool needsThread)
Initialisation function called from main.
static void allToAll(const labelUList &sendData, labelUList &recvData, const label communicator=0)
Exchange label with all processors (in the communicator).
static label nRequests()
Get number of outstanding requests.
static void gather(const char *sendData, int sendSize, char *recvData, const UList< int > &recvSizes, const UList< int > &recvOffsets, const label communicator=0)
Receive data from all processors on the master.
static void addValidParOptions(HashTable< string > &validParOptions)
Add the valid option this type of communications library.
static void waitRequests(const label start=0)
Wait until all requests (from start onwards) have finished.
static void resetRequests(const label sz)
Truncate number of outstanding requests.
static void scatter(const char *sendData, const UList< int > &sendSizes, const UList< int > &sendOffsets, char *recvData, int recvSize, const label communicator=0)
Send data to all processors from the root of the communicator.
static void abort()
Abort program.
static void exit(int errnum=1)
Exit program.
static bool finishedRequest(const label i)
Non-blocking comms: has request i finished?
static void waitRequest(const label i)
Wait until request i has finished.
#define NotImplemented
Issue a FatalErrorIn for a function not currently implemented.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
errorManipArg< error, int > exit(error &err, const int errNo=1)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
void reduce(const List< UPstream::commsStruct > &comms, T &Value, const BinaryOp &bop, const int tag, const label comm)
void sumReduce(T &Value, label &Count, const int tag=Pstream::msgType(), const label comm=UPstream::worldComm)