SG++-Doxygen-Documentation
|
#include <MPIRequestPool.hpp>
Public Member Functions | |
size_t | createMPIRequestHandle () |
Allocate storage for one MPI_Request and return the handle to it. More... | |
void | deleteMPIRequestHandle (size_t handleIndex) |
Deallocate one MPI_Request based on its handle. More... | |
MPI_Request * | getMPIRequestHandle (size_t handleIndex) |
Gets the actual MPI_Request from its handle. More... | |
MPI_Request * | getMPIRequests () |
Fetches the start of the MPI_Requests held sequentially in memory for use in MPI operations. More... | |
size_t | size () |
Gets the number of stored MPI_Requests currently held in the pool. More... | |
Protected Member Functions | |
void | printPoolStatistics () const |
Prints grid pool usage statistics for performance analysis. More... | |
Protected Attributes | |
std::set< size_t > | freedRequests |
Holds indices to requests that were freed but could not yet be deallocated for later use or deallocation. More... | |
std::vector< MPI_Request > | mpiRequestStorage |
Holds the actual MPI_Requests sequentially in memory. More... | |
size_t sgpp::datadriven::MPIRequestPool::createMPIRequestHandle | ( | ) |
Allocate storage for one MPI_Request and return the handle to it.
References freedRequests, mpiRequestStorage, and printPoolStatistics().
Referenced by sgpp::datadriven::PendingMPIRequest::PendingMPIRequest().
void sgpp::datadriven::MPIRequestPool::deleteMPIRequestHandle | ( | size_t | handleIndex | ) |
Deallocate one MPI_Request based on its handle.
handleIndex | The handle for which to delete. |
References freedRequests, mpiRequestStorage, and printPoolStatistics().
Referenced by sgpp::datadriven::PendingMPIRequest::~PendingMPIRequest().
MPI_Request * sgpp::datadriven::MPIRequestPool::getMPIRequestHandle | ( | size_t | handleIndex | ) |
Gets the actual MPI_Request from its handle.
handleIndex | The handle to the MPI_Request. |
References mpiRequestStorage.
Referenced by sgpp::datadriven::PendingMPIRequest::getMPIRequestFromHandle(), and getMPIRequests().
MPI_Request * sgpp::datadriven::MPIRequestPool::getMPIRequests | ( | ) |
Fetches the start of the MPI_Requests held sequentially in memory for use in MPI operations.
References getMPIRequestHandle().
Referenced by sgpp::datadriven::MPIMethods::executeMPIWaitAny().
|
inlineprotected |
Prints grid pool usage statistics for performance analysis.
References D, freedRequests, and mpiRequestStorage.
Referenced by createMPIRequestHandle(), and deleteMPIRequestHandle().
size_t sgpp::datadriven::MPIRequestPool::size | ( | ) |
Gets the number of stored MPI_Requests currently held in the pool.
References mpiRequestStorage.
Referenced by sgpp::datadriven::MPIMethods::executeMPIWaitAny().
|
protected |
Holds indices to requests that were freed but could not yet be deallocated for later use or deallocation.
Referenced by createMPIRequestHandle(), deleteMPIRequestHandle(), and printPoolStatistics().
|
protected |
Holds the actual MPI_Requests sequentially in memory.
Referenced by createMPIRequestHandle(), deleteMPIRequestHandle(), getMPIRequestHandle(), printPoolStatistics(), and size().