Input inter-processor communications stream using MPI broadcast - operating on external buffer.
More...
|
| | UIPBstream (const UPstream::commsTypes, const int rootProcNo, DynamicList< char > &receiveBuf, label &receiveBufPosition, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm, const bool clearAtEnd=false, IOstreamOption::streamFormat fmt=IOstreamOption::BINARY) |
| | Construct given process index to read from using the given attached receive buffer, optional communication characteristics and IO format. More...
|
| |
| virtual | ~UIPBstream ()=default |
| | Destructor. More...
|
| |
| virtual Istream & | read (token &) override |
| | Use all read methods from base. More...
|
| |
| virtual Istream & | read (char &c) override |
| | Use all read methods from base. More...
|
| |
| virtual Istream & | read (word &str) override |
| | Use all read methods from base. More...
|
| |
| virtual Istream & | read (string &str) override |
| | Use all read methods from base. More...
|
| |
| virtual Istream & | read (label &val) override |
| | Use all read methods from base. More...
|
| |
| virtual Istream & | read (float &val) override |
| | Use all read methods from base. More...
|
| |
| virtual Istream & | read (double &val) override |
| | Use all read methods from base. More...
|
| |
| virtual Istream & | read (char *data, std::streamsize count) override |
| | Use all read methods from base. More...
|
| |
| virtual | ~UIPstreamBase () |
| | Destructor. Optionally clears external receive buffer. More...
|
| |
| virtual ios_base::fmtflags | flags () const override |
| | Return stream flags. More...
|
| |
| virtual ios_base::fmtflags | flags (const ios_base::fmtflags) override |
| | Set flags of stream flags. More...
|
| |
| virtual Istream & | read (token &) override |
| | Return next token from stream. More...
|
| |
| virtual Istream & | read (char &c) override |
| | Read a character. More...
|
| |
| virtual Istream & | read (word &str) override |
| | Read a word. More...
|
| |
| virtual Istream & | read (string &str) override |
| | Read a string (including enclosing double-quotes) More...
|
| |
| virtual Istream & | read (label &val) override |
| | Read a label. More...
|
| |
| virtual Istream & | read (float &val) override |
| | Read a float. More...
|
| |
| virtual Istream & | read (double &val) override |
| | Read a double. More...
|
| |
| virtual Istream & | read (char *data, std::streamsize count) override |
| | Read binary block with 8-byte alignment. Reading into a null pointer behaves like a forward seek of count characters. More...
|
| |
| virtual Istream & | readRaw (char *data, std::streamsize count) override |
| | Low-level raw binary read. Reading into a null pointer behaves like a forward seek of count characters. More...
|
| |
| virtual bool | beginRawRead () override |
| | Start of low-level raw binary read. More...
|
| |
| virtual bool | endRawRead () override |
| | End of low-level raw binary read. More...
|
| |
| virtual void | rewind () override |
| | Rewind the receive stream position so that it may be read again. More...
|
| |
| void | print (Ostream &os) const override |
| | Print stream description to Ostream. More...
|
| |
| | ClassName ("UPstream") |
| | Declare name of the class and its debug switch. More...
|
| |
| | UPstream (const commsTypes commsType) noexcept |
| | Construct for given communication type. More...
|
| |
| commsTypes | commsType () const noexcept |
| | Get the communications type of the stream. More...
|
| |
| commsTypes | commsType (const commsTypes ct) noexcept |
| | Set the communications type of the stream. More...
|
| |
| template<class T > |
| Foam::List< T > | allGatherValues (const T &localValue, const label comm) |
| |
| template<class T > |
| Foam::List< T > | listGatherValues (const T &localValue, const label comm) |
| |
| | Istream (const Istream &)=default |
| | Copy construct. More...
|
| |
| virtual | ~Istream ()=default |
| | Destructor. More...
|
| |
| | Istream (IOstreamOption streamOpt=IOstreamOption()) |
| | Default construct (ASCII, uncompressed), construct with specified stream option. More...
|
| |
| | Istream (IOstreamOption::streamFormat fmt, IOstreamOption::compressionType cmp=IOstreamOption::UNCOMPRESSED) |
| | Construct with format (uncompressed) More...
|
| |
| const token & | peekBack () const noexcept |
| | Examine putback token without removing it. More...
|
| |
| void | putBackClear () |
| | Drop the putback token. More...
|
| |
| void | putBack (const token &tok) |
| | Put back a token (copy). Only a single put back is permitted. More...
|
| |
| void | putBack (token &&tok) |
| | Put back a token (move). Only a single put back is permitted. More...
|
| |
| bool | getBack (token &tok) |
| | Retrieve the put-back token if there is one. More...
|
| |
| bool | readBegin (const char *funcName) |
| | Begin read of data chunk, starts with '('. More...
|
| |
| bool | readEnd (const char *funcName) |
| | End read of data chunk, ends with ')'. More...
|
| |
| char | readBeginList (const char *funcName) |
| | Begin read of list data, starts with '(' or '{'. More...
|
| |
| char | readEndList (const char *funcName) |
| | End read of list data, ends with ')' or '}'. More...
|
| |
| Istream & | operator() () const |
| | Return a non-const reference to const Istream. More...
|
| |
| | IOstream (const IOstream &)=default |
| | Copy construct. More...
|
| |
| virtual | ~IOstream ()=default |
| | Destructor. More...
|
| |
| | IOstream (IOstreamOption streamOpt=IOstreamOption()) |
| | Default construct (ASCII, uncompressed), construct with specified stream option. More...
|
| |
| | IOstream (IOstreamOption::streamFormat fmt, IOstreamOption::versionNumber ver, IOstreamOption::compressionType cmp=IOstreamOption::UNCOMPRESSED) |
| | Construct with format, version (compression) More...
|
| |
| virtual const fileName & | name () const |
| | The name of the stream. More...
|
| |
| fileName | relativeName () const |
| | Return the name of the stream relative to the current case. More...
|
| |
| virtual bool | check (const char *operation) const |
| | Check IOstream status for given operation. More...
|
| |
| bool | fatalCheck (const char *operation) const |
| | Check IOstream status for given operation. More...
|
| |
| bool | opened () const noexcept |
| | True if stream has been opened. More...
|
| |
| bool | closed () const noexcept |
| | True if stream is closed. More...
|
| |
| bool | good () const noexcept |
| | True if next operation might succeed. More...
|
| |
| bool | eof () const noexcept |
| | True if end of input seen. More...
|
| |
| bool | fail () const noexcept |
| | True if next operation will fail. More...
|
| |
| bool | bad () const noexcept |
| | True if stream is corrupted. More...
|
| |
| | operator bool () const noexcept |
| | Return true if the stream has not failed. More...
|
| |
| bool | operator! () const noexcept |
| | Return true if the stream has failed. More...
|
| |
| unsigned | labelByteSize () const noexcept |
| | The sizeof (label) in bytes associated with the stream. More...
|
| |
| unsigned | scalarByteSize () const noexcept |
| | The sizeof (scalar) in bytes associated with the stream. More...
|
| |
| void | setLabelByteSize (unsigned nbytes) noexcept |
| | Set the sizeof (label) in bytes associated with the stream. More...
|
| |
| void | setScalarByteSize (unsigned nbytes) noexcept |
| | Set the sizeof (scalar) in bytes associated with the stream. More...
|
| |
| template<class T = label> |
| std::enable_if< std::is_integral< T >::value, bool >::type | checkLabelSize () const noexcept |
| | Check if the label byte-size associated with the stream is the same as the given type. More...
|
| |
| template<class T = scalar> |
| std::enable_if< std::is_floating_point< T >::value, bool >::type | checkScalarSize () const noexcept |
| | Check if the scalar byte-size associated with the stream is the same as the given type. More...
|
| |
| label | lineNumber () const noexcept |
| | Const access to the current stream line number. More...
|
| |
| label & | lineNumber () noexcept |
| | Non-const access to the current stream line number. More...
|
| |
| label | lineNumber (const label num) noexcept |
| | Set the stream line number. More...
|
| |
| void | setEof () noexcept |
| | Set stream state as reached 'eof'. More...
|
| |
| void | setFail () noexcept |
| | Set stream state as 'failed'. More...
|
| |
| void | setBad () |
| | Set stream state to be 'bad'. More...
|
| |
| ios_base::fmtflags | setf (const ios_base::fmtflags f) |
| | Set flags of stream. More...
|
| |
| ios_base::fmtflags | setf (const ios_base::fmtflags f, const ios_base::fmtflags mask) |
| | Set flags of given field of stream. More...
|
| |
| void | unsetf (const ios_base::fmtflags f) |
| | Unset flags of stream. More...
|
| |
| void | print (Ostream &os, const int streamState) const |
| | Print information about the stream state bits. More...
|
| |
| InfoProxy< IOstream > | info () const noexcept |
| | Return info proxy, used to print IOstream information to a stream. More...
|
| |
| constexpr | IOstreamOption (streamFormat fmt=streamFormat::ASCII, compressionType comp=compressionType::UNCOMPRESSED) noexcept |
| | Default construct (ASCII, UNCOMPRESSED, currentVersion) or construct with format, compression. More...
|
| |
| constexpr | IOstreamOption (streamFormat fmt, compressionType comp, versionNumber ver) noexcept |
| | Construct from components (format, compression, version) More...
|
| |
| constexpr | IOstreamOption (streamFormat fmt, versionNumber ver, compressionType comp=compressionType::UNCOMPRESSED) noexcept |
| | Construct from components (format, version, compression) More...
|
| |
| | IOstreamOption (const IOstreamOption &opt, streamFormat fmt) noexcept |
| | Copy construct with change of format. More...
|
| |
| streamFormat | format () const noexcept |
| | Get the current stream format. More...
|
| |
| streamFormat | format (const streamFormat fmt) noexcept |
| | Set the stream format. More...
|
| |
| streamFormat | format (const word &formatName) |
| | Set the stream format from string value. More...
|
| |
| compressionType | compression () const noexcept |
| | Get the stream compression. More...
|
| |
| compressionType | compression (const compressionType comp) noexcept |
| | Set the stream compression. More...
|
| |
| compressionType | compression (const word &compName) |
| | Set the stream compression from string value. More...
|
| |
| versionNumber | version () const noexcept |
| | Get the stream version. More...
|
| |
| versionNumber | version (const versionNumber ver) noexcept |
| | Set the stream version. More...
|
| |
| versionNumber | version (const token &tok) |
| | Set the stream version from token. More...
|
| |
|
| static label | read (const int rootProcNo, char *buf, const std::streamsize bufSize, const label comm=UPstream::worldComm) |
| | Wrapped version of UPstream::broadcast. More...
|
| |
| static constexpr label | commGlobal () noexcept |
| | Communicator for all ranks, irrespective of any local worlds. More...
|
| |
| static constexpr label | commSelf () noexcept |
| | Communicator within the current rank only. More...
|
| |
| static label | commWorld () noexcept |
| | Communicator for all ranks (respecting any local worlds) More...
|
| |
| static label | commWorld (const label communicator) noexcept |
| | Set world communicator. Negative values are a no-op. More...
|
| |
| static label | commWarn (const label communicator) noexcept |
| | Alter communicator debugging setting. Warns for use of any communicator differing from specified. More...
|
| |
| static label | nComms () noexcept |
| | Number of currently defined communicators. More...
|
| |
| static void | printCommTree (const label communicator) |
| | Debugging: print the communication tree. More...
|
| |
| static label | commIntraHost () |
| | Demand-driven: Intra-host communicator (respects any local worlds) More...
|
| |
| static label | commInterHost () |
| | Demand-driven: Inter-host communicator (respects any local worlds) More...
|
| |
| static bool | hasHostComms () |
| | Test for presence of any intra or inter host communicators. More...
|
| |
| static void | clearHostComms () |
| | Remove any existing intra and inter host communicators. More...
|
| |
| static label | allocateCommunicator (const label parent, const labelRange &subRanks, const bool withComponents=true) |
| | Allocate new communicator with contiguous sub-ranks on the parent communicator. More...
|
| |
| static label | allocateCommunicator (const label parent, const labelUList &subRanks, const bool withComponents=true) |
| | Allocate new communicator with sub-ranks on the parent communicator. More...
|
| |
| static void | freeCommunicator (const label communicator, const bool withComponents=true) |
| | Free a previously allocated communicator. More...
|
| |
| static label | allocateInterHostCommunicator (const label parentCommunicator=worldComm) |
| | Allocate an inter-host communicator. More...
|
| |
| static label | allocateIntraHostCommunicator (const label parentCommunicator=worldComm) |
| | Allocate an intra-host communicator. More...
|
| |
| static int | baseProcNo (label comm, int procID) |
| | Return physical processor number (i.e. processor number in worldComm) given communicator and processor. More...
|
| |
| static label | procNo (const label comm, const int baseProcID) |
| | Return processor number in communicator (given physical processor number) (= reverse of baseProcNo) More...
|
| |
| static label | procNo (const label comm, const label currentComm, const int currentProcID) |
| | Return processor number in communicator (given processor number and communicator) More...
|
| |
| static void | addValidParOptions (HashTable< string > &validParOptions) |
| | Add the valid option this type of communications library adds/requires on the command line. More...
|
| |
| static bool | init (int &argc, char **&argv, const bool needsThread) |
| | Initialisation function called from main. More...
|
| |
| static bool | initNull () |
| | Special purpose initialisation function. More...
|
| |
| static void | barrier (const label communicator, UPstream::Request *req=nullptr) |
| | Impose a synchronisation barrier (optionally non-blocking) More...
|
| |
| static std::pair< int, int > | probeMessage (const UPstream::commsTypes commsType, const int fromProcNo, const int tag=UPstream::msgType(), const label communicator=worldComm) |
| | Probe for an incoming message. More...
|
| |
| static label | nRequests () noexcept |
| | Number of outstanding requests (on the internal list of requests) More...
|
| |
| static void | resetRequests (const label n) |
| | Truncate outstanding requests to given length, which is expected to be in the range [0 to nRequests()]. More...
|
| |
| static void | addRequest (UPstream::Request &req) |
| | Transfer the (wrapped) MPI request to the internal global list. More...
|
| |
| static void | cancelRequest (const label i) |
| | Non-blocking comms: cancel and free outstanding request. Corresponds to MPI_Cancel() + MPI_Request_free() More...
|
| |
| static void | cancelRequest (UPstream::Request &req) |
| | Non-blocking comms: cancel and free outstanding request. Corresponds to MPI_Cancel() + MPI_Request_free() More...
|
| |
| static void | cancelRequests (UList< UPstream::Request > &requests) |
| | Non-blocking comms: cancel and free outstanding requests. Corresponds to MPI_Cancel() + MPI_Request_free() More...
|
| |
| static void | removeRequests (const label pos, label len=-1) |
| | Non-blocking comms: cancel/free outstanding requests (from position onwards) and remove from internal list of requests. Corresponds to MPI_Cancel() + MPI_Request_free() More...
|
| |
| static void | freeRequest (UPstream::Request &req) |
| | Non-blocking comms: free outstanding request. Corresponds to MPI_Request_free() More...
|
| |
| static void | freeRequests (UList< UPstream::Request > &requests) |
| | Non-blocking comms: free outstanding requests. Corresponds to MPI_Request_free() More...
|
| |
| static void | waitRequests (const label pos, label len=-1) |
| | Wait until all requests (from position onwards) have finished. Corresponds to MPI_Waitall() More...
|
| |
| static void | waitRequests (UList< UPstream::Request > &requests) |
| | Wait until all requests have finished. Corresponds to MPI_Waitall() More...
|
| |
| static bool | waitAnyRequest (const label pos, label len=-1) |
| | Wait until any request (from position onwards) has finished. Corresponds to MPI_Waitany() More...
|
| |
| static bool | waitSomeRequests (const label pos, label len=-1, DynamicList< int > *indices=nullptr) |
| | Wait until some requests (from position onwards) have finished. Corresponds to MPI_Waitsome() More...
|
| |
| static bool | waitSomeRequests (UList< UPstream::Request > &requests, DynamicList< int > *indices=nullptr) |
| | Wait until some requests have finished. Corresponds to MPI_Waitsome() More...
|
| |
| static label | waitAnyRequest (UList< UPstream::Request > &requests) |
| | Wait until any request has finished and return its index. Corresponds to MPI_Waitany() More...
|
| |
| static void | waitRequest (const label i) |
| | Wait until request i has finished. Corresponds to MPI_Wait() More...
|
| |
| static void | waitRequest (UPstream::Request &req) |
| | Wait until specified request has finished. Corresponds to MPI_Wait() More...
|
| |
| static bool | finishedRequest (const label i) |
| | Non-blocking comms: has request i finished? Corresponds to MPI_Test() More...
|
| |
| static bool | finishedRequest (UPstream::Request &req) |
| | Non-blocking comms: has request finished? Corresponds to MPI_Test() More...
|
| |
| static bool | finishedRequests (const label pos, label len=-1) |
| | Non-blocking comms: have all requests (from position onwards) finished? Corresponds to MPI_Testall() More...
|
| |
| static bool | finishedRequests (UList< UPstream::Request > &requests) |
| | Non-blocking comms: have all requests finished? Corresponds to MPI_Testall() More...
|
| |
| static bool | finishedRequestPair (label &req0, label &req1) |
| | Non-blocking comms: have both requests finished? Corresponds to pair of MPI_Test() More...
|
| |
| static void | waitRequestPair (label &req0, label &req1) |
| | Non-blocking comms: wait for both requests to finish. Corresponds to pair of MPI_Wait() More...
|
| |
| static bool | parRun (const bool on) noexcept |
| | Set as parallel run on/off. More...
|
| |
| static bool & | parRun () noexcept |
| | Test if this a parallel run. More...
|
| |
| static bool | haveThreads () noexcept |
| | Have support for threads. More...
|
| |
| static constexpr int | masterNo () noexcept |
| | Relative rank for the master process - is always 0. More...
|
| |
| static label | nProcs (const label communicator=worldComm) |
| | Number of ranks in parallel run (for given communicator). It is 1 for serial run. More...
|
| |
| static int | myProcNo (const label communicator=worldComm) |
| | Rank of this process in the communicator (starting from masterNo()). Can be negative if the process is not a rank in the communicator. More...
|
| |
| static bool | master (const label communicator=worldComm) |
| | True if process corresponds to the master rank in the communicator. More...
|
| |
| static bool | is_rank (const label communicator=worldComm) |
| | True if process corresponds to any rank (master or sub-rank) in the given communicator. More...
|
| |
| static bool | is_subrank (const label communicator=worldComm) |
| | True if process corresponds to a sub-rank in the given communicator. More...
|
| |
| static bool | is_parallel (const label communicator=worldComm) |
| | True if parallel algorithm or exchange is required. More...
|
| |
| static label | parent (const label communicator) |
| | The parent communicator. More...
|
| |
| static List< int > & | procID (const label communicator) |
| | The list of ranks within a given communicator. More...
|
| |
| static const wordList & | allWorlds () noexcept |
| | All worlds. More...
|
| |
| static const labelList & | worldIDs () noexcept |
| | The indices into allWorlds for all processes. More...
|
| |
| static label | myWorldID () |
| | My worldID. More...
|
| |
| static const word & | myWorld () |
| | My world. More...
|
| |
| static rangeType | allProcs (const label communicator=worldComm) |
| | Range of process indices for all processes. More...
|
| |
| static rangeType | subProcs (const label communicator=worldComm) |
| | Range of process indices for sub-processes. More...
|
| |
| static const List< commsStruct > & | linearCommunication (const label communicator=worldComm) |
| | Communication schedule for linear all-to-master (proc 0) More...
|
| |
| static const List< commsStruct > & | treeCommunication (const label communicator=worldComm) |
| | Communication schedule for tree all-to-master (proc 0) More...
|
| |
| static const List< commsStruct > & | whichCommunication (const label communicator=worldComm) |
| | Communication schedule for linear/tree all-to-master (proc 0). Chooses based on the value of UPstream::nProcsSimpleSum. More...
|
| |
| static int & | msgType () noexcept |
| | Message tag of standard messages. More...
|
| |
| static int | msgType (int val) noexcept |
| | Set the message tag for standard messages. More...
|
| |
| static int | incrMsgType (int val=1) noexcept |
| | Increment the message tag for standard messages. More...
|
| |
| static void | shutdown (int errNo=0) |
| | Shutdown (finalize) MPI as required. More...
|
| |
| static void | abort () |
| | Call MPI_Abort with no other checks or cleanup. More...
|
| |
| static void | exit (int errNo=1) |
| | Shutdown (finalize) MPI as required and exit program with errNo. More...
|
| |
| static void | allToAll (const UList< int32_t > &sendData, UList< int32_t > &recvData, const label communicator=worldComm) |
| | Exchange int32_t data with all ranks in communicator. More...
|
| |
| static void | allToAllConsensus (const UList< int32_t > &sendData, UList< int32_t > &recvData, const int tag, const label communicator=worldComm) |
| | Exchange non-zero int32_t data between ranks [NBX]. More...
|
| |
| static void | allToAllConsensus (const Map< int32_t > &sendData, Map< int32_t > &recvData, const int tag, const label communicator=worldComm) |
| | Exchange int32_t data between ranks [NBX]. More...
|
| |
| static Map< int32_t > | allToAllConsensus (const Map< int32_t > &sendData, const int tag, const label communicator=worldComm) |
| | Exchange int32_t data between ranks [NBX]. More...
|
| |
| static void | allToAll (const UList< int64_t > &sendData, UList< int64_t > &recvData, const label communicator=worldComm) |
| | Exchange int64_t data with all ranks in communicator. More...
|
| |
| static void | allToAllConsensus (const UList< int64_t > &sendData, UList< int64_t > &recvData, const int tag, const label communicator=worldComm) |
| | Exchange non-zero int64_t data between ranks [NBX]. More...
|
| |
| static void | allToAllConsensus (const Map< int64_t > &sendData, Map< int64_t > &recvData, const int tag, const label communicator=worldComm) |
| | Exchange int64_t data between ranks [NBX]. More...
|
| |
| static Map< int64_t > | allToAllConsensus (const Map< int64_t > &sendData, const int tag, const label communicator=worldComm) |
| | Exchange int64_t data between ranks [NBX]. More...
|
| |
| static void | mpiGather (const char *sendData, char *recvData, int count, const label communicator=worldComm) |
| | Receive identically-sized char data from all ranks. More...
|
| |
| static void | mpiScatter (const char *sendData, char *recvData, int count, const label communicator=worldComm) |
| | Send identically-sized char data to all ranks. More...
|
| |
| static void | mpiAllGather (char *allData, int count, const label communicator=worldComm) |
| | Gather/scatter identically-sized char data. More...
|
| |
| static void | gather (const char *sendData, int sendCount, char *recvData, const UList< int > &recvCounts, const UList< int > &recvOffsets, const label communicator=worldComm) |
| | Receive variable length char data from all ranks. More...
|
| |
| static void | scatter (const char *sendData, const UList< int > &sendCounts, const UList< int > &sendOffsets, char *recvData, int recvCount, const label communicator=worldComm) |
| | Send variable length char data to all ranks. More...
|
| |
| static void | mpiGather (const int32_t *sendData, int32_t *recvData, int count, const label communicator=worldComm) |
| | Receive identically-sized int32_t data from all ranks. More...
|
| |
| static void | mpiScatter (const int32_t *sendData, int32_t *recvData, int count, const label communicator=worldComm) |
| | Send identically-sized int32_t data to all ranks. More...
|
| |
| static void | mpiAllGather (int32_t *allData, int count, const label communicator=worldComm) |
| | Gather/scatter identically-sized int32_t data. More...
|
| |
| static void | gather (const int32_t *sendData, int sendCount, int32_t *recvData, const UList< int > &recvCounts, const UList< int > &recvOffsets, const label communicator=worldComm) |
| | Receive variable length int32_t data from all ranks. More...
|
| |
| static void | scatter (const int32_t *sendData, const UList< int > &sendCounts, const UList< int > &sendOffsets, int32_t *recvData, int recvCount, const label communicator=worldComm) |
| | Send variable length int32_t data to all ranks. More...
|
| |
| static void | mpiGather (const int64_t *sendData, int64_t *recvData, int count, const label communicator=worldComm) |
| | Receive identically-sized int64_t data from all ranks. More...
|
| |
| static void | mpiScatter (const int64_t *sendData, int64_t *recvData, int count, const label communicator=worldComm) |
| | Send identically-sized int64_t data to all ranks. More...
|
| |
| static void | mpiAllGather (int64_t *allData, int count, const label communicator=worldComm) |
| | Gather/scatter identically-sized int64_t data. More...
|
| |
| static void | gather (const int64_t *sendData, int sendCount, int64_t *recvData, const UList< int > &recvCounts, const UList< int > &recvOffsets, const label communicator=worldComm) |
| | Receive variable length int64_t data from all ranks. More...
|
| |
| static void | scatter (const int64_t *sendData, const UList< int > &sendCounts, const UList< int > &sendOffsets, int64_t *recvData, int recvCount, const label communicator=worldComm) |
| | Send variable length int64_t data to all ranks. More...
|
| |
| static void | mpiGather (const uint32_t *sendData, uint32_t *recvData, int count, const label communicator=worldComm) |
| | Receive identically-sized uint32_t data from all ranks. More...
|
| |
| static void | mpiScatter (const uint32_t *sendData, uint32_t *recvData, int count, const label communicator=worldComm) |
| | Send identically-sized uint32_t data to all ranks. More...
|
| |
| static void | mpiAllGather (uint32_t *allData, int count, const label communicator=worldComm) |
| | Gather/scatter identically-sized uint32_t data. More...
|
| |
| static void | gather (const uint32_t *sendData, int sendCount, uint32_t *recvData, const UList< int > &recvCounts, const UList< int > &recvOffsets, const label communicator=worldComm) |
| | Receive variable length uint32_t data from all ranks. More...
|
| |
| static void | scatter (const uint32_t *sendData, const UList< int > &sendCounts, const UList< int > &sendOffsets, uint32_t *recvData, int recvCount, const label communicator=worldComm) |
| | Send variable length uint32_t data to all ranks. More...
|
| |
| static void | mpiGather (const uint64_t *sendData, uint64_t *recvData, int count, const label communicator=worldComm) |
| | Receive identically-sized uint64_t data from all ranks. More...
|
| |
| static void | mpiScatter (const uint64_t *sendData, uint64_t *recvData, int count, const label communicator=worldComm) |
| | Send identically-sized uint64_t data to all ranks. More...
|
| |
| static void | mpiAllGather (uint64_t *allData, int count, const label communicator=worldComm) |
| | Gather/scatter identically-sized uint64_t data. More...
|
| |
| static void | gather (const uint64_t *sendData, int sendCount, uint64_t *recvData, const UList< int > &recvCounts, const UList< int > &recvOffsets, const label communicator=worldComm) |
| | Receive variable length uint64_t data from all ranks. More...
|
| |
| static void | scatter (const uint64_t *sendData, const UList< int > &sendCounts, const UList< int > &sendOffsets, uint64_t *recvData, int recvCount, const label communicator=worldComm) |
| | Send variable length uint64_t data to all ranks. More...
|
| |
| static void | mpiGather (const float *sendData, float *recvData, int count, const label communicator=worldComm) |
| | Receive identically-sized float data from all ranks. More...
|
| |
| static void | mpiScatter (const float *sendData, float *recvData, int count, const label communicator=worldComm) |
| | Send identically-sized float data to all ranks. More...
|
| |
| static void | mpiAllGather (float *allData, int count, const label communicator=worldComm) |
| | Gather/scatter identically-sized float data. More...
|
| |
| static void | gather (const float *sendData, int sendCount, float *recvData, const UList< int > &recvCounts, const UList< int > &recvOffsets, const label communicator=worldComm) |
| | Receive variable length float data from all ranks. More...
|
| |
| static void | scatter (const float *sendData, const UList< int > &sendCounts, const UList< int > &sendOffsets, float *recvData, int recvCount, const label communicator=worldComm) |
| | Send variable length float data to all ranks. More...
|
| |
| static void | mpiGather (const double *sendData, double *recvData, int count, const label communicator=worldComm) |
| | Receive identically-sized double data from all ranks. More...
|
| |
| static void | mpiScatter (const double *sendData, double *recvData, int count, const label communicator=worldComm) |
| | Send identically-sized double data to all ranks. More...
|
| |
| static void | mpiAllGather (double *allData, int count, const label communicator=worldComm) |
| | Gather/scatter identically-sized double data. More...
|
| |
| static void | gather (const double *sendData, int sendCount, double *recvData, const UList< int > &recvCounts, const UList< int > &recvOffsets, const label communicator=worldComm) |
| | Receive variable length double data from all ranks. More...
|
| |
| static void | scatter (const double *sendData, const UList< int > &sendCounts, const UList< int > &sendOffsets, double *recvData, int recvCount, const label communicator=worldComm) |
| | Send variable length double data to all ranks. More...
|
| |
| template<class T > |
| static List< T > | allGatherValues (const T &localValue, const label communicator=worldComm) |
| | Allgather individual values into list locations. More...
|
| |
| template<class T > |
| static List< T > | listGatherValues (const T &localValue, const label communicator=worldComm) |
| | Gather individual values into list locations. More...
|
| |
| template<class T > |
| static T | listScatterValues (const UList< T > &allValues, const label communicator=worldComm) |
| | Scatter individual values from list locations. More...
|
| |
| static bool | broadcast (char *buf, const std::streamsize bufSize, const label communicator, const int rootProcNo=masterNo()) |
| | Broadcast buffer contents to all processes in given communicator. The sizes must match on all processes. More...
|
| |
| static void | reduceAnd (bool &value, const label communicator=worldComm) |
| | Logical (and) reduction (MPI_AllReduce) More...
|
| |
| static void | reduceOr (bool &value, const label communicator=worldComm) |
| | Logical (or) reduction (MPI_AllReduce) More...
|
| |
| static void | waitRequests () |
| | Wait for all requests to finish. More...
|
| |
| static constexpr int | firstSlave () noexcept |
| | Process index of first sub-process. More...
|
| |
| static int | lastSlave (const label communicator=worldComm) |
| | Process index of last sub-process. More...
|
| |
| static unsigned int | defaultPrecision () noexcept |
| | Return the default precision. More...
|
| |
| static unsigned int | defaultPrecision (unsigned int prec) noexcept |
| | Reset the default precision. More...
|
| |
| static floatFormat | floatFormatEnum (const word &fmtName, const floatFormat deflt=floatFormat::general) |
| | Lookup floatFormat enum corresponding to the string (general | fixed | scientific). More...
|
| |
| static floatFormat | floatFormatEnum (const word &key, const dictionary &dict, const floatFormat deflt=floatFormat::general) |
| | getOrDefault floatFormat from dictionary, warn only on bad enumeration. More...
|
| |
| static streamFormat | formatEnum (const word &fmtName, const streamFormat deflt=streamFormat::ASCII) |
| | Lookup streamFormat enum corresponding to the string (ascii | binary). More...
|
| |
| static streamFormat | formatEnum (const word &key, const dictionary &dict, const streamFormat deflt=streamFormat::ASCII) |
| | getOrDefault streamFormat from dictionary, warn only on bad enumeration. More...
|
| |
| static compressionType | compressionEnum (const word &compName, const compressionType deflt=compressionType::UNCOMPRESSED) |
| | The compression enum corresponding to the string. More...
|
| |
| static compressionType | compressionEnum (const word &key, const dictionary &dict, const compressionType deflt=compressionType::UNCOMPRESSED) |
| | getOrDefault compressionType from dictionary, warn only on bad enumeration. More...
|
| |
|
| enum | commsTypes : char { blocking,
scheduled,
nonBlocking
} |
| | Communications types. More...
|
| |
| enum | sendModes : char { normal,
sync
} |
| | Different MPI-send modes (ignored for commsTypes::blocking) More...
|
| |
| typedef IntRange< int > | rangeType |
| | Int ranges are used for MPI ranks (processes) More...
|
| |
| enum | streamAccess : char { CLOSED = 0,
OPENED
} |
| | Enumeration for stream open/closed state. More...
|
| |
| enum | streamFormat : char { ASCII = 0,
BINARY
} |
| | Data format (ascii | binary) More...
|
| |
| enum | compressionType : char { UNCOMPRESSED = 0,
COMPRESSED
} |
| | Compression treatment (UNCOMPRESSED | COMPRESSED) More...
|
| |
| enum | appendType : char { NON_APPEND = 0,
APPEND
} |
| | File appending (NON_APPEND | APPEND) More...
|
| |
| enum | atomicType : char { NON_ATOMIC = 0,
ATOMIC
} |
| | Atomic operations (output) More...
|
| |
| enum | floatFormat : unsigned { general = unsigned(0),
fixed = unsigned(std::ios_base::fixed),
scientific = unsigned(std::ios_base::scientific)
} |
| | Float formats (eg, time directory name formats) More...
|
| |
| static const Enum< commsTypes > | commsTypeNames |
| | Enumerated names for the communication types. More...
|
| |
| static bool | floatTransfer |
| | Should compact transfer be used in which floats replace doubles reducing the bandwidth requirement at the expense of some loss in accuracy. More...
|
| |
| static int | nProcsSimpleSum |
| | Number of processors to change from linear to tree communication. More...
|
| |
| static int | nProcsNonblockingExchange |
| | Number of processors to change to nonBlocking consensual exchange (NBX). Ignored for zero or negative values. More...
|
| |
| static int | nPollProcInterfaces |
| | Number of polling cycles in processor updates. More...
|
| |
| static commsTypes | defaultCommsType |
| | Default commsType. More...
|
| |
| static int | maxCommsSize |
| | Optional maximum message size (bytes) More...
|
| |
| static int | tuning_NBX_ |
| | Tuning parameters for non-blocking exchange (NBX) More...
|
| |
| static const int | mpiBufferSize |
| | MPI buffer-size (bytes) More...
|
| |
| static label | worldComm |
| | Communicator for all ranks. May differ from commGlobal() if local worlds are in use. More...
|
| |
| static label | warnComm |
| | Debugging: warn for use of any communicator differing from warnComm. More...
|
| |
| static unsigned int | precision_ |
| | Default precision. More...
|
| |
| static const Enum< floatFormat > | floatFormatNames |
| | Names for float formats (general, fixed, scientific) More...
|
| |
| static const Enum< streamFormat > | formatNames |
| | Stream format names (ascii, binary) More...
|
| |
| static const versionNumber | currentVersion |
| | The current version number (2.0) More...
|
| |
| | UIPstreamBase (const UPstream::commsTypes commsType, const int fromProcNo, DynamicList< char > &receiveBuf, label &receiveBufPosition, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm, const bool clearAtEnd=false, IOstreamOption::streamFormat fmt=IOstreamOption::BINARY) |
| | Construct given process index to read from using the given attached receive buffer, optional communication characteristics and IO format. More...
|
| |
| | UIPstreamBase (const int fromProcNo, PstreamBuffers &buffers) |
| | Construct given buffers. More...
|
| |
| | UIPstreamBase (const DynamicList< char > &receiveBuf, IOstreamOption::streamFormat fmt) |
| | Construct for an externally obtained buffer. More...
|
| |
| bool | hasPutback () const noexcept |
| | True if putback token is in use. More...
|
| |
| void | setOpened () noexcept |
| | Set stream opened. More...
|
| |
| void | setClosed () noexcept |
| | Set stream closed. More...
|
| |
| void | setState (std::ios_base::iostate state) noexcept |
| | Set stream state. More...
|
| |
| void | setGood () noexcept |
| | Set stream state to be good. More...
|
| |
| const int | fromProcNo_ |
| | Source rank for the data. More...
|
| |
| const int | tag_ |
| | Message tag for communication. More...
|
| |
| const int | comm_ |
| | The communicator index. More...
|
| |
| int | messageSize_ |
| | The message size, read on bufferIPCrecv or set directly. More...
|
| |
| label | storedRecvBufPos_ |
| | Receive position in buffer data, if ony If there is no external location for recvBufPos_. More...
|
| |
| const bool | clearAtEnd_ |
| | Clear the receive buffer on termination (in the destructor) More...
|
| |
| DynamicList< char > & | recvBuf_ |
| | Reference to the receive buffer data. More...
|
| |
| label & | recvBufPos_ |
| | Reference to the receive position in buffer data. More...
|
| |
| std::ios_base::iostate | ioState_ |
| | Mirror of internal stream io state. More...
|
| |
| streamAccess | openClosed_ |
| | The stream open/closed state. More...
|
| |
| unsigned char | sizeofLabel_ |
| | The sizeof (label), possibly read from the header. More...
|
| |
| unsigned char | sizeofScalar_ |
| | The sizeof (scalar), possibly read from the header. More...
|
| |
| label | lineNumber_ |
| | The file line. More...
|
| |
| static fileName | staticName_ |
| | Name for any generic stream - normally treat as readonly. More...
|
| |