|
|
| ZMQ (Config const config) |
| |
|
| ZMQ (ZMQ &&other)=delete |
| |
|
| ZMQ (ZMQ &other)=delete |
| |
|
| template<typename T_Send > |
| void | send (const VAddr destVAddr, const Tag tag, const Context context, const T_Send &sendData) |
| | Blocking transmission of a message sendData to peer with virtual address destVAddr. More...
|
| |
| template<typename T_Send > |
| Event | asyncSend (const VAddr destVAddr, const Tag tag, const Context context, T_Send &sendData) |
| | Non blocking transmission of a message sendData to peer with virtual address destVAddr. More...
|
| |
|
template<typename T_Send > |
| void | asyncSendImpl (const MsgType msgType, const MsgID msgID, const Context context, const VAddr destVAddr, const Tag tag, T_Send &sendData) |
| |
| template<typename T_Recv > |
| void | recv (const VAddr srcVAddr, const Tag tag, const Context context, T_Recv &recvData) |
| | Blocking receive of a message recvData from peer with virtual address srcVAddr. More...
|
| |
|
template<typename T_Recv > |
| Event | recv (const Context context, T_Recv &recvData) |
| |
|
template<typename T_Recv > |
| void | recvImpl (const MsgType msgType, const Context context, const VAddr srcVAddr, const Tag tag, T_Recv &recvData) |
| |
|
template<typename T_Recv > |
| Event | recvImpl (const Context context, T_Recv &recvData) |
| |
|
void | wait (const MsgType msgID, const Context context, const VAddr vAddr, const Tag tag) |
| |
|
bool | ready (const MsgType msgID, const Context context, const VAddr vAddr, const Tag tag) |
| |
|
| Context | splitContext (const bool isMember, const Context oldContext) |
| |
|
Context | getGlobalContext () |
| | Returns the context that contains all peers.
|
| |
|
void | send (const VAddr destVAddr, const Tag tag, const Context context, const T_Send &sendData)=delete |
| |
|
Event | asyncSend (const VAddr destVAddr, const Tag tag, const Context context, const T_Send &sendData)=delete |
| |
|
void | recv (const VAddr srcVAddr, const Tag tag, const Context context, T_Recv &recvData)=delete |
| |
|
Event | recv (const Context context, T_Recv &recvData)=delete |
| |
|
Event | asyncRecv (const VAddr srcVAddr, const Tag tag, const Context context, T_Recv &recvData)=delete |
| |
| void | gather (const VAddr rootVAddr, const Context context, const T_Send &sendData, T_Recv &recvData) |
| | Collects sendData from all peers of the context and transmits it as a list to the peer with rootVAddr. Data of all peers has to be from the same size. More...
|
| |
| void | gatherVar (const VAddr rootVAddr, const Context context, const T_Send &sendData, T_Recv &recvData, std::vector< unsigned > &recvCount) |
| | Collects sendData from all members of the context with varying size and transmits it as a list to peer with rootVAddr. More...
|
| |
| void | allGather (Context context, const T_Send &sendData, T_Recv &recvData) |
| | Collects sendData from all members of the context and transmits it as a list to every peer in the context More...
|
| |
| void | allGatherVar (const Context context, const T_Send &sendData, T_Recv &recvData, std::vector< unsigned > &recvCount) |
| | Collects sendData from all peers of the context. Size of sendData can vary in size. The data is received by every peer in the context. More...
|
| |
| void | scatter (const VAddr rootVAddr, const Context context, const T_Send &sendData, T_Recv &recvData) |
| | Distributes sendData from peer rootVAddr to all peers in context. Every peer will receive different data. More...
|
| |
| void | allScatter (const Context context, const T_Send &sendData, T_Recv &recvData) |
| | Distributes sendData of all peer in the context to all peers in the context. Every peer will receive data from every other peer (also the own data) More...
|
| |
| void | reduce (const VAddr rootVAddr, const Context context, const T_Op op, const T_Send &sendData, T_Recv &recvData) |
| | Performs a reduction with a binary operator op on all sendData elements from all peers whithin the context. The result will be received by the peer with rootVAddr. Binary operations like std::plus, std::minus can be used. But, they can also be defined as binary operator simular to std::plus etc. More...
|
| |
| void | allReduce (const Context context, T_Op op, const T_Send &sendData, T_Recv &recvData) |
| | Performs a reduction with a binary operator op on all sendData elements from all peers whithin the context. The result will be received by all peers. More...
|
| |
| void | broadcast (const VAddr rootVAddr, const Context context, T_SendRecv &data) |
| | Send sendData from peer rootVAddr to all peers in context. Every peer will receive the same data. More...
|
| |
|
void | synchronize (const Context context) |
| | Synchronizes all peers within context to the same point in the programm execution (barrier).
|
| |
Implementation of the Cage communicationPolicy interface based on ZMQ.