30 const size_t entry_count,
31 const size_t emitted_keys_count,
32 const size_t hash_table_size)
48 const size_t entry_count,
49 const size_t emitted_keys_count,
50 const size_t hash_table_size,
51 const size_t device_id)
54 , device_id_(device_id)
105 const size_t device_id_;
int8_t * getGpuBuffer() const override
size_t getEntryCount() const override
size_t cpu_hash_table_buff_size_
BaselineHashTable(Data_Namespace::DataMgr *data_mgr, HashType layout, const size_t entry_count, const size_t emitted_keys_count, const size_t hash_table_size, const size_t device_id)
virtual int8_t * getMemoryPtr()=0
HashType getLayout() const override
size_t getEmittedKeysCount() const override
virtual size_t reservedSize() const =0
size_t getHashTableBufferSize(const ExecutorDeviceType device_type) const override
BaselineHashTable(HashType layout, const size_t entry_count, const size_t emitted_keys_count, const size_t hash_table_size)
An AbstractBuffer is a unit of data management for a data manager.
size_t emitted_keys_count_
std::unique_ptr< int8_t[]> cpu_hash_table_buff_
~BaselineHashTable() override
Data_Namespace::AbstractBuffer * gpu_hash_table_buff_
static Data_Namespace::AbstractBuffer * allocGpuAbstractBuffer(Data_Namespace::DataMgr *data_mgr, const size_t num_bytes, const int device_id)
int8_t * getCpuBuffer() override
Allocate GPU memory using GpuBuffers via DataMgr.