|
ADOL-C: Automatic Differentiation in C/C++ 2.7.3
|
Location allocator that tracks contiguous free blocks. More...
#include <storemanager.h>


Classes | |
| struct | FreeBlock |
| Descriptor for one contiguous range of free locations. More... | |
Public Member Functions | |
| StoreManagerLocintBlock (double *&storePtr, size_t &size, size_t &numlives) | |
| StoreManagerLocintBlock (const StoreManagerLocintBlock *const stm, double *&storePtr, size_t &size, size_t &numLives) | |
| StoreManagerLocintBlock (const StoreManagerLocintBlock &)=delete | |
| StoreManagerLocintBlock (StoreManagerLocintBlock &&)=delete | |
| StoreManagerLocintBlock & | operator= (const StoreManagerLocintBlock &)=delete |
| StoreManagerLocintBlock & | operator= (StoreManagerLocintBlock &&)=delete |
| virtual | ~StoreManagerLocintBlock () |
| virtual size_t | size () const |
| virtual size_t | maxSize () const |
| virtual unsigned char | storeType () const |
| virtual size_t | next_loc () |
| virtual void | free_loc (size_t loc) |
| virtual void | ensure_block (size_t n) |
| virtual void | grow (size_t minGrow=0) |
Public Member Functions inherited from StoreManager | |
| StoreManager () | |
| virtual | ~StoreManager () |
| virtual void | free_loc (locint)=0 |
| void | setStoreManagerControl (double gcTriggerRatio, size_t gcTriggerMaxSize) |
| double | gcTriggerRatio () const |
| size_t | gcTriggerMaxSize () const |
Protected Member Functions | |
| void | consolidateBlocks () |
Protected Attributes | |
| double *& | storePtr |
| std::forward_list< FreeBlock > | indexFree {0} |
| size_t & | maxsize |
| size_t & | currentfill |
Protected Attributes inherited from StoreManager | |
| double | myGcTriggerRatio {0} |
| size_t | myGcTriggerMaxSize {0} |
Additional Inherited Members | |
Public Types inherited from StoreManager | |
| enum | LocationMgrType { ADOLC_LOCATION_BLOCKS , ADOLC_LOCATION_SINGLETONS } |
Static Public Member Functions inherited from StoreManager | |
| static size_t | get_initialSize () |
Static Protected Attributes inherited from StoreManager | |
| static size_t const | initialSize {4} |
Location allocator that tracks contiguous free blocks.
This representation makes allocation of adjacent locations efficient for active vectors and other block operations.
| StoreManagerLocintBlock::StoreManagerLocintBlock | ( | double *& | storePtr, |
| size_t & | size, | ||
| size_t & | numlives | ||
| ) |
| StoreManagerLocintBlock::StoreManagerLocintBlock | ( | const StoreManagerLocintBlock *const | stm, |
| double *& | storePtr, | ||
| size_t & | size, | ||
| size_t & | numLives | ||
| ) |
|
delete |
|
delete |
|
virtual |
|
protected |
|
virtual |
Implements StoreManager.
|
virtual |
|
virtual |
when minGrow is specified we asssume that we have already search the blocks and found no block with minGrow locations in it
Implements StoreManager.
|
inlinevirtual |
Implements StoreManager.
|
virtual |
Implements StoreManager.
|
delete |
|
delete |
|
inlinevirtual |
Implements StoreManager.
|
inlinevirtual |
Implements StoreManager.
|
protected |
|
protected |
|
protected |
|
protected |