Variable-length MPI message containing unspecific binary data.
More...
#include <communication.hpp>
|
void | Isend (int rank, MPI_Comm comm) |
| 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. More...
|
|
void | Issend (int rank, MPI_Comm comm) |
| Non-blocking synchronous send to processor 'rank'. Returns immediately. Completion (MPI_Wait/Test) means that the message was received. More...
|
|
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 message. More...
|
|
| VarMessage () |
|
void | Clear () |
| Clear the message and associated request. More...
|
|
virtual | ~VarMessage () |
|
| VarMessage (const VarMessage &other) |
|
|
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) |
| Return true if all messages in the map container were sent, otherwise return false, without waiting. More...
|
|
static void | Probe (int &rank, int &size, MPI_Comm comm) |
| Blocking probe for incoming message of this type from any rank. Returns the rank and message size. More...
|
|
static bool | IProbe (int &rank, int &size, MPI_Comm comm) |
| 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. More...
|
|
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...
|
|
|
virtual void | Encode (int rank) |
|
virtual void | Decode (int rank) |
|
template<int Tag>
struct mfem::VarMessage< Tag >
Variable-length MPI message containing unspecific binary data.
Definition at line 400 of file communication.hpp.
◆ VarMessage() [1/2]
◆ ~VarMessage()
◆ VarMessage() [2/2]
◆ Clear()
◆ Decode()
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 552 of file communication.hpp.
◆ Encode()
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 551 of file communication.hpp.
◆ IProbe()
template<int Tag>
static bool mfem::VarMessage< Tag >::IProbe |
( |
int & |
rank, |
|
|
int & |
size, |
|
|
MPI_Comm |
comm |
|
) |
| |
|
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 479 of file communication.hpp.
◆ Isend()
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 409 of file communication.hpp.
◆ IsendAll()
template<int Tag>
template<typename MapT >
static void mfem::VarMessage< Tag >::IsendAll |
( |
MapT & |
rank_msg, |
|
|
MPI_Comm |
comm |
|
) |
| |
|
inlinestatic |
Helper to send all messages in a rank-to-message map container.
Definition at line 428 of file communication.hpp.
◆ Issend()
Non-blocking synchronous send to processor 'rank'. Returns immediately. Completion (MPI_Wait/Test) means that the message was received.
Definition at line 419 of file communication.hpp.
◆ Probe()
template<int Tag>
static void mfem::VarMessage< Tag >::Probe |
( |
int & |
rank, |
|
|
int & |
size, |
|
|
MPI_Comm |
comm |
|
) |
| |
|
inlinestatic |
Blocking probe for incoming message of this type from any rank. Returns the rank and message size.
Definition at line 468 of file communication.hpp.
◆ Recv()
Post-probe receive from processor 'rank' of message size 'size'.
Definition at line 492 of file communication.hpp.
◆ RecvAll()
template<int Tag>
template<typename MapT >
Helper to receive all messages in a rank-to-message map container.
Definition at line 517 of file communication.hpp.
◆ RecvDrop()
◆ TestAllSent()
template<int Tag>
template<typename MapT >
Return true if all messages in the map container were sent, otherwise return false, without waiting.
Definition at line 450 of file communication.hpp.
◆ WaitAllSent()
template<int Tag>
template<typename MapT >
Helper to wait for all messages in a map container to be sent.
Definition at line 438 of file communication.hpp.
◆ data
◆ send_request
The documentation for this struct was generated from the following file: