UPstreamWrapping.H File Reference

Functions to wrap MPI_Bcast, MPI_Allreduce, MPI_Iallreduce etc. More...

Include dependency graph for UPstreamWrapping.H:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Request
 

Namespaces

 Foam
 Namespace for OpenFOAM.
 
 Foam::PstreamDetail
 Implementation details for UPstream/Pstream/MPI etc.
 

Macros

#define MPICH_SKIP_MPICXX
 
#define OMPI_SKIP_MPICXX
 

Functions

template<class Type >
void broadcast0 (Type *values, int count, MPI_Datatype datatype, const label comm)
 
template<class Type >
void reduce0 (Type *values, int count, MPI_Datatype datatype, MPI_Op optype, const label comm)
 
template<class Type >
void allReduce (Type *values, int count, MPI_Datatype datatype, MPI_Op optype, const label comm, UPstream::Request *req=nullptr, label *requestID=nullptr)
 
template<class Type >
void allToAll (const UList< Type > &sendData, UList< Type > &recvData, MPI_Datatype datatype, const label comm, UPstream::Request *req=nullptr, label *requestID=nullptr)
 
template<class Type >
void allToAllv (const Type *sendData, const UList< int > &sendCounts, const UList< int > &sendOffsets, Type *recvData, const UList< int > &recvCounts, const UList< int > &recvOffsets, MPI_Datatype datatype, const label comm, UPstream::Request *req=nullptr, label *requestID=nullptr)
 
template<class Type >
void allToAllConsensus (const UList< Type > &sendData, UList< Type > &recvData, MPI_Datatype datatype, const int tag, const label comm)
 
template<class Type >
void allToAllConsensus (const Map< Type > &sendData, Map< Type > &recvData, MPI_Datatype datatype, const int tag, const label comm)
 
template<class Type >
void gather (const Type *sendData, Type *recvData, int count, MPI_Datatype datatype, const label comm, UPstream::Request *req=nullptr, label *requestID=nullptr)
 
template<class Type >
void scatter (const Type *sendData, Type *recvData, int count, MPI_Datatype datatype, const label comm, UPstream::Request *req=nullptr, label *requestID=nullptr)
 
template<class Type >
void gatherv (const Type *sendData, int sendCount, Type *recvData, const UList< int > &recvCounts, const UList< int > &recvOffsets, MPI_Datatype datatype, const label comm, UPstream::Request *req=nullptr, label *requestID=nullptr)
 
template<class Type >
void scatterv (const Type *sendData, const UList< int > &sendCounts, const UList< int > &sendOffsets, Type *recvData, int recvCount, MPI_Datatype datatype, const label comm, UPstream::Request *req=nullptr, label *requestID=nullptr)
 
template<class Type >
void allGather (Type *allData, int count, MPI_Datatype datatype, const label comm, UPstream::Request *req=nullptr, label *requestID=nullptr)
 

Detailed Description

Functions to wrap MPI_Bcast, MPI_Allreduce, MPI_Iallreduce etc.

Original source file UPstreamWrapping.H

InNamespace Foam::PstreamDetail

Source files

Definition in file UPstreamWrapping.H.

Macro Definition Documentation

◆ MPICH_SKIP_MPICXX

#define MPICH_SKIP_MPICXX

Definition at line 41 of file UPstreamWrapping.H.

◆ OMPI_SKIP_MPICXX

#define OMPI_SKIP_MPICXX

Definition at line 44 of file UPstreamWrapping.H.