Inter-processor communication reduction functions. More...
Go to the source code of this file.
Namespaces | |
namespace | Foam |
Namespace for OpenFOAM. | |
Macros | |
#define | Pstream_CommonReductions(Native) |
#define | Pstream_FloatReductions(Native) |
Functions | |
template<class T , class BinaryOp > | |
void | reduce (const List< UPstream::commsStruct > &comms, T &value, const BinaryOp &bop, const int tag, const label comm) |
template<class T , class BinaryOp > | |
void | reduce (T &value, const BinaryOp &bop, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
template<class T , class BinaryOp > | |
T | returnReduce (const T &value, const BinaryOp &bop, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (copy) and return value. More... | |
template<class T > | |
void | sumReduce (T &value, label &count, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
template<class T , class BinaryOp > | |
void | reduce (T values[], const int size, const BinaryOp &, const int tag, const label comm) |
template<class T , class BinaryOp > | |
void | reduce (T &Value, const BinaryOp &, const int tag, const label comm, label &request) |
template<class T , class BinaryOp > | |
void | reduce (T values[], const int size, const BinaryOp &, const int tag, const label comm, label &request) |
void | reduce (bool &value, const andOp< bool > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Logical (and) reduction (cf. MPI AllReduce) More... | |
void | reduce (bool &value, const orOp< bool > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Logical (or) reduction (cf. MPI AllReduce) More... | |
void | reduce (int32_t &value, const minOp< int32_t > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (min) single int32_t value. More... | |
void | reduce (int32_t &value, const maxOp< int32_t > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (max) single int32_t value. More... | |
void | reduce (int32_t &value, const sumOp< int32_t > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (sum) single int32_t value. More... | |
void | reduce (int32_t values[], const int size, const sumOp< int32_t > &, const int tag, const label comm) |
Reduce (sum) multiple int32_t values (identical size all procs!) More... | |
template<unsigned N> | |
void | reduce (FixedList< int32_t, N > &values, const sumOp< int32_t > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (sum) multiple int32_t values. More... | |
void | reduce (int64_t &value, const minOp< int64_t > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (min) single int64_t value. More... | |
void | reduce (int64_t &value, const maxOp< int64_t > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (max) single int64_t value. More... | |
void | reduce (int64_t &value, const sumOp< int64_t > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (sum) single int64_t value. More... | |
void | reduce (int64_t values[], const int size, const sumOp< int64_t > &, const int tag, const label comm) |
Reduce (sum) multiple int64_t values (identical size all procs!) More... | |
template<unsigned N> | |
void | reduce (FixedList< int64_t, N > &values, const sumOp< int64_t > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (sum) multiple int64_t values. More... | |
void | reduce (uint32_t &value, const minOp< uint32_t > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (min) single uint32_t value. More... | |
void | reduce (uint32_t &value, const maxOp< uint32_t > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (max) single uint32_t value. More... | |
void | reduce (uint32_t &value, const sumOp< uint32_t > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (sum) single uint32_t value. More... | |
void | reduce (uint32_t values[], const int size, const sumOp< uint32_t > &, const int tag, const label comm) |
Reduce (sum) multiple uint32_t values (identical size all procs!) More... | |
template<unsigned N> | |
void | reduce (FixedList< uint32_t, N > &values, const sumOp< uint32_t > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (sum) multiple uint32_t values. More... | |
void | reduce (uint64_t &value, const minOp< uint64_t > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (min) single uint64_t value. More... | |
void | reduce (uint64_t &value, const maxOp< uint64_t > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (max) single uint64_t value. More... | |
void | reduce (uint64_t &value, const sumOp< uint64_t > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (sum) single uint64_t value. More... | |
void | reduce (uint64_t values[], const int size, const sumOp< uint64_t > &, const int tag, const label comm) |
Reduce (sum) multiple uint64_t values (identical size all procs!) More... | |
template<unsigned N> | |
void | reduce (FixedList< uint64_t, N > &values, const sumOp< uint64_t > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (sum) multiple uint64_t values. More... | |
void | reduce (float &value, const minOp< float > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (min) single float value. More... | |
void | reduce (float &value, const maxOp< float > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (max) single float value. More... | |
void | reduce (float &value, const sumOp< float > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (sum) single float value. More... | |
void | reduce (float values[], const int size, const sumOp< float > &, const int tag, const label comm) |
Reduce (sum) multiple float values (identical size all procs!) More... | |
template<unsigned N> | |
void | reduce (FixedList< float, N > &values, const sumOp< float > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (sum) multiple float values. More... | |
void | reduce (double &value, const minOp< double > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (min) single double value. More... | |
void | reduce (double &value, const maxOp< double > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (max) single double value. More... | |
void | reduce (double &value, const sumOp< double > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (sum) single double value. More... | |
void | reduce (double values[], const int size, const sumOp< double > &, const int tag, const label comm) |
Reduce (sum) multiple double values (identical size all procs!) More... | |
template<unsigned N> | |
void | reduce (FixedList< double, N > &values, const sumOp< double > &, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Reduce (sum) multiple double values. More... | |
void | sumReduce (float &value, label &count, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Sum of both float value and count (for averaging) More... | |
void | reduce (float &value, const sumOp< float > &, const int tag, const label comm, label &requestID) |
Non-blocking reduce (sum) single float value. Sets request. More... | |
void | reduce (float values[], const int size, const sumOp< float > &, const int tag, const label comm, label &requestID) |
Non-blocking reduce (sum) multiple float values. Sets request. More... | |
void | sumReduce (double &value, label &count, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm) |
Sum of both double value and count (for averaging) More... | |
void | reduce (double &value, const sumOp< double > &, const int tag, const label comm, label &requestID) |
Non-blocking reduce (sum) single double value. Sets request. More... | |
void | reduce (double values[], const int size, const sumOp< double > &, const int tag, const label comm, label &requestID) |
Non-blocking reduce (sum) multiple double values. Sets request. More... | |
Inter-processor communication reduction functions.
Original source file PstreamReduceOps.H
InNamespace Foam
Definition in file PstreamReduceOps.H.
#define Pstream_CommonReductions | ( | Native | ) |
Definition at line 199 of file PstreamReduceOps.H.
#define Pstream_FloatReductions | ( | Native | ) |
Definition at line 267 of file PstreamReduceOps.H.