Chombo + EB
3.0
|
Go to the source code of this file.
Macros | |
#define | _SPMDI_H_ |
Functions | |
template<class T > | |
int | linearSize (const T &inputT) |
template<class T > | |
void | linearIn (T &a_outputT, const void *const inBuf) |
template<class T > | |
void | linearOut (void *const a_outBuf, const T &inputT) |
template<class T > | |
void | gather (Vector< T > &a_outVec, const T &a_input, int a_dest) |
template<class T > | |
void | broadcast (T &a_inAndOut, int a_src) |
broadcast to every process More... | |
void | barrier (void) |
all ranks wait here to sync-up More... | |
template<class T > | |
void | linearListIn (Vector< T > &a_outputT, const void *const a_inBuf) |
template<class T > | |
void | linearListOut (void *const a_outBuf, const Vector< T > &a_input) |
template<class T > | |
int | linearListSize (const Vector< T > &a_input) |
#define _SPMDI_H_ |
int linearSize | ( | const T & | inputT | ) |
Referenced by CHprocID(), MiniIVFAB< Real >::linearIn(), BaseIVFAB< Real >::linearIn(), MiniIFFAB< Real >::linearIn(), BaseIFFAB< FaceStencil >::linearIn(), IrregTag::Entry::linearIn(), linearListOut(), linearListSize(), linearOut(), MiniIVFAB< Real >::linearOut(), BaseIVFAB< Real >::linearOut(), MiniIFFAB< Real >::linearOut(), BaseIFFAB< FaceStencil >::linearOut(), IrregTag::Entry::linearOut(), MiniIVFAB< Real >::size(), BaseIVFAB< Real >::size(), MiniIFFAB< Real >::size(), BaseIFFAB< FaceStencil >::size(), VarCoefStencil::weight(), and VoFStencil::weight().
void linearIn | ( | T & | a_outputT, |
const void *const | inBuf | ||
) |
void linearOut | ( | void *const | a_outBuf, |
const T & | inputT | ||
) |
References AttachDebugger(), barrier(), broadcast(), CH_assert, CH_MaxMPIRecvSize, CH_MaxMPISendSize, MayDay::Error(), freeMT, gather(), linearIn(), linearOut(), linearSize(), mallocMT, numProc(), procID(), and Vector< T >::resize().
Referenced by CHprocID(), linearListOut(), linearOut(), MiniIVFAB< Real >::linearOut(), BaseIVFAB< Real >::linearOut(), MiniIFFAB< Real >::linearOut(), BaseIFFAB< FaceStencil >::linearOut(), IrregTag::Entry::linearOut(), and LDOperator< FArrayBox >::op().
|
inline |
References Vector< T >::resize().
Referenced by CHprocID(), gatherBoxesAndOffsets(), getOffsets(), linearOut(), and regionGather().
|
inline |
broadcast to every process
Broadcasts a_inAndOut to every process from process number a_src. It is an error if a_src < 0 or a_src >= numProc(). \
T must have have the following functions: \
int linearSize<T>(const T& inputT); \ void linearIn<T>(T& a_outputT, const void* const inBuf); \ void linearOut<T>(void* a_outBuf, const T& inputT); \
Referenced by CHprocID(), gatherBoxesAndOffsets(), getOffsets(), and linearOut().
|
inline |
all ranks wait here to sync-up
All MPI ranks wait here to sync-up. Calls MPI_Barrier(comm)
Referenced by CHprocID(), and linearOut().
void linearListIn | ( | Vector< T > & | a_outputT, |
const void *const | a_inBuf | ||
) |
References linearIn(), and Vector< T >::resize().
Referenced by CHprocID(), IFidTable::linearIn(), BaseIVFAB< Real >::linearIn(), MiniIFFAB< Real >::linearIn(), and BaseIFFAB< FaceStencil >::linearIn().
void linearListOut | ( | void *const | a_outBuf, |
const Vector< T > & | a_input | ||
) |
References linearOut(), linearSize(), and Vector< T >::size().
Referenced by CHprocID(), IFidTable::linearOut(), BaseIVFAB< Real >::linearOut(), MiniIFFAB< Real >::linearOut(), and BaseIFFAB< FaceStencil >::linearOut().
int linearListSize | ( | const Vector< T > & | a_input | ) |
References linearSize(), and Vector< T >::size().
Referenced by CHprocID(), BaseIVFAB< Real >::linearIn(), MiniIFFAB< Real >::linearIn(), BaseIFFAB< FaceStencil >::linearIn(), BaseIVFAB< Real >::linearOut(), MiniIFFAB< Real >::linearOut(), BaseIFFAB< FaceStencil >::linearOut(), IFidTable::linearSize(), IrregTag::Entry::linearSize(), BaseIVFAB< Real >::size(), MiniIFFAB< Real >::size(), and BaseIFFAB< FaceStencil >::size().