|
Galois
|
MPI implementation of network IO. More...
Public Member Functions | |
| NetworkIOMPI (galois::runtime::MemUsageTracker &tracker, std::atomic< size_t > &sends, std::atomic< size_t > &recvs, uint32_t &ID, uint32_t &NUM) | |
| Constructor. More... | |
| virtual void | enqueue (message m) |
| Adds a message to the send queue. More... | |
| virtual message | dequeue () |
| Attempts to get a message from the recv queue. More... | |
| virtual void | progress () |
| Push progress forward in the system. More... | |
Public Member Functions inherited from galois::runtime::NetworkIO | |
| NetworkIO (MemUsageTracker &tracker, std::atomic< size_t > &sends, std::atomic< size_t > &recvs) | |
| The default constructor takes a memory usage tracker and saves it. More... | |
| virtual | ~NetworkIO () |
| Default destructor does nothing. More... | |
Additional Inherited Members | |
Protected Types inherited from galois::runtime::NetworkIO | |
| using | vTy = galois::PODResizeableArray< uint8_t > |
Static Protected Member Functions inherited from galois::runtime::NetworkIO | |
| static void | handleError (int rc) |
| Wrapper for dealing with MPI error codes. More... | |
Protected Attributes inherited from galois::runtime::NetworkIO | |
| MemUsageTracker & | memUsageTracker |
| memory usage tracker More... | |
| std::atomic< size_t > & | inflightSends |
| Number of inflight sends and receives. More... | |
| std::atomic< size_t > & | inflightRecvs |
MPI implementation of network IO.
ASSUMES THAT MPI IS INITIALIZED UPON CREATION OF THIS OBJECT.
|
inline |
Constructor.
| tracker | memory usage tracker | |
| sends | ||
| recvs | ||
| [out] | ID | this machine's host id |
| [out] | NUM | total number of hosts in the system |
|
inlinevirtual |
Attempts to get a message from the recv queue.
Implements galois::runtime::NetworkIO.
|
inlinevirtual |
Adds a message to the send queue.
Implements galois::runtime::NetworkIO.
|
inlinevirtual |
Push progress forward in the system.
Implements galois::runtime::NetworkIO.