|
SST
11.0.0
StructuralSimulationToolkit
|
Public Member Functions | |
| virtual SharedRegion * | getLocalSharedRegion (const std::string &key, size_t size, uint8_t initByte=0) override |
| Create a SharedRegion that will only be shared with elements on the current rank. More... | |
| virtual SharedRegion * | getGlobalSharedRegion (const std::string &key, size_t size, SharedRegionMerger *merger=nullptr, uint8_t initByte=0) override |
| Create a SharedRegion that will be shared with elements on the all ranks. More... | |
| virtual void | publishRegion (SharedRegion *) override |
| virtual bool | isRegionReady (const SharedRegion *) override |
| virtual void | shutdownSharedRegion (SharedRegion *) override |
| void | updateState (bool finalize) override |
Protected Member Functions | |
| void | modifyRegion (SharedRegion *sr, size_t offset, size_t length, const void *data) override |
| void * | getMemory (SharedRegion *sr) override |
| const void * | getConstPtr (const SharedRegion *sr) const override |
| size_t | getSize (const SharedRegion *sr) const override |
|
overridevirtual |
Create a SharedRegion that will be shared with elements on the all ranks.
The SharedRegion data will be merged across ranks before each round of calls to init().
| key | Name of the SharedRegion. All elements using this name will get the same underlying data. |
| size | Size of the SharedRegion. Elements can specify 0 size if they don't know the size of the region. At least one element will need to specify the size and all elements that specify a size must pass in the same size. There are many calls in SharedRegion that can't be called until the size is known. |
| merger | Merger to use when combining data across ranks |
| initByte | Value to initialize all bytes in the region to |
Implements SST::SharedRegionManager.
References SST::Output::fatal(), SST::Simulation::getSimulation(), and SST::Simulation::getSimulationOutput().
|
overridevirtual |
Create a SharedRegion that will only be shared with elements on the current rank.
This type of SharedRegion is intended to have at least one element on each rank initialize the region.
| key | Name of the SharedRegion. All elements om the rank using this name will get the same underlying data. |
| size | Size of the SharedRegion. Elements can specify 0 size if they don't know the size of the region. At least one element will need to specify the size and all elements that specify a size must pass in the same size. There are many calls in SharedRegion that can't be called until the size is known. |
| initByte | Value to initialize all bytes in the region to |
Implements SST::SharedRegionManager.
References SST::Output::fatal(), SST::Simulation::getSimulation(), and SST::Simulation::getSimulationOutput().