Class Buffer_Namespace::TieredCpuBufferMgr

class TieredCpuBufferMgr : public Buffer_Namespace::CpuBufferMgr

Public Functions

TieredCpuBufferMgr(const int device_id, const size_t total_size, CudaMgr_Namespace::CudaMgr *cuda_mgr, const size_t min_slab_size, const size_t max_slab_size, const size_t page_size, const CpuTierSizeVector &cpu_tier_sizes, AbstractBufferMgr *parent_mgr = nullptr)
~TieredCpuBufferMgr()
std::vector<std::pair<std::unique_ptr<Arena>, size_t>> &getAllocators()
MgrType getMgrType()
std::string getStringMgrType()
Arena *getAllocatorForSlab(int32_t slab_num) const
std::string dump() const

Private Functions

void addSlab(const size_t slab_size)
void freeAllMem()
void initializeMem()

Private Members

std::vector<std::pair<std::unique_ptr<Arena>, size_t>> allocators_
std::map<int32_t, Arena *> slab_to_allocator_map_