MFEM
v4.1.0
Finite element discretization library
|
Variable-length MPI message containing unspecific binary data. More...
#include <communication.hpp>
Public Member Functions | |
void | Isend (int rank, MPI_Comm comm) |
void | Issend (int rank, MPI_Comm comm) |
void | Recv (int rank, int size, MPI_Comm comm) |
Post-probe receive from processor 'rank' of message size 'size'. More... | |
void | RecvDrop (int rank, int size, MPI_Comm comm) |
Like Recv(), but throw away the messsage. More... | |
VarMessage () | |
void | Clear () |
virtual | ~VarMessage () |
VarMessage (const VarMessage &other) | |
Static Public Member Functions | |
template<typename MapT > | |
static void | IsendAll (MapT &rank_msg, MPI_Comm comm) |
Helper to send all messages in a rank-to-message map container. More... | |
template<typename MapT > | |
static void | WaitAllSent (MapT &rank_msg) |
Helper to wait for all messages in a map container to be sent. More... | |
template<typename MapT > | |
static bool | TestAllSent (MapT &rank_msg) |
static void | Probe (int &rank, int &size, MPI_Comm comm) |
static bool | IProbe (int &rank, int &size, MPI_Comm comm) |
template<typename MapT > | |
static void | RecvAll (MapT &rank_msg, MPI_Comm comm) |
Helper to receive all messages in a rank-to-message map container. More... | |
Public Attributes | |
std::string | data |
MPI_Request | send_request |
Protected Member Functions | |
virtual void | Encode (int rank) |
virtual void | Decode (int rank) |
Variable-length MPI message containing unspecific binary data.
Definition at line 320 of file communication.hpp.
|
inline |
Definition at line 450 of file communication.hpp.
|
inlinevirtual |
Definition at line 453 of file communication.hpp.
|
inline |
Definition at line 459 of file communication.hpp.
|
inline |
Definition at line 451 of file communication.hpp.
|
inlineprotectedvirtual |
Reimplemented in mfem::ParNCMesh::RebalanceDofMessage, mfem::ParNCMesh::ElementValueMessage< ValueType, RefTypes, Tag >, mfem::ParNCMesh::ElementValueMessage< int, true, 157 >, mfem::ParNCMesh::ElementValueMessage< int, false, 290 >, mfem::ParNCMesh::ElementValueMessage< char, false, 289 >, and mfem::ParNCMesh::ElementValueMessage< int, false, 156 >.
Definition at line 468 of file communication.hpp.
|
inlineprotectedvirtual |
Reimplemented in mfem::ParNCMesh::RebalanceDofMessage, mfem::ParNCMesh::ElementValueMessage< ValueType, RefTypes, Tag >, mfem::ParNCMesh::ElementValueMessage< int, true, 157 >, mfem::ParNCMesh::ElementValueMessage< int, false, 290 >, mfem::ParNCMesh::ElementValueMessage< char, false, 289 >, and mfem::ParNCMesh::ElementValueMessage< int, false, 156 >.
Definition at line 467 of file communication.hpp.
|
inlinestatic |
Non-blocking probe for incoming message of this type from any rank. If there is an incoming message, returns true and sets 'rank' and 'size'. Otherwise returns false.
Definition at line 397 of file communication.hpp.
|
inline |
Non-blocking send to processor 'rank'. Returns immediately. Completion (as tested by MPI_Wait/Test) does not mean the message was received – it may be on its way or just buffered locally.
Definition at line 328 of file communication.hpp.
|
inlinestatic |
Helper to send all messages in a rank-to-message map container.
Definition at line 346 of file communication.hpp.
|
inline |
Non-blocking synchronous send to processor 'rank'. Returns immediately. Completion (MPI_Wait/Test) means that the message was received.
Definition at line 337 of file communication.hpp.
|
inlinestatic |
Blocking probe for incoming message of this type from any rank. Returns the rank and message size.
Definition at line 386 of file communication.hpp.
|
inline |
Post-probe receive from processor 'rank' of message size 'size'.
Definition at line 410 of file communication.hpp.
|
inlinestatic |
Helper to receive all messages in a rank-to-message map container.
Definition at line 435 of file communication.hpp.
|
inline |
Like Recv(), but throw away the messsage.
Definition at line 425 of file communication.hpp.
|
inlinestatic |
Return true if all messages in the map container were sent, otherwise return false, without waiting.
Definition at line 368 of file communication.hpp.
|
inlinestatic |
Helper to wait for all messages in a map container to be sent.
Definition at line 356 of file communication.hpp.
std::string mfem::VarMessage< Tag >::data |
Definition at line 322 of file communication.hpp.
MPI_Request mfem::VarMessage< Tag >::send_request |
Definition at line 323 of file communication.hpp.