#include <PerfectHashTable.h>
|
static DecodedJoinHashBufferSet | toSet (size_t key_component_count, size_t key_component_width, size_t entry_count, const int8_t *ptr1, const int8_t *ptr2, const int8_t *ptr3, const int8_t *ptr4, size_t buffer_size) |
| Decode hash table into a std::set for easy inspection and validation. More...
|
|
static std::string | toString (const std::string &type, const std::string &layout_type, size_t key_component_count, size_t key_component_width, size_t entry_count, const int8_t *ptr1, const int8_t *ptr2, const int8_t *ptr3, const int8_t *ptr4, size_t buffer_size, bool raw=false) |
| Decode hash table into a human-readable string. More...
|
|
Definition at line 25 of file PerfectHashTable.h.
Definition at line 28 of file PerfectHashTable.h.
References CPU, cpu_hash_table_buff_, cpu_hash_table_buff_size_, emitted_keys_count_, entry_count_, layout_, OneToOne, HashTable::toString(), and VLOG.
38 std::string device_str =
"GPU";
47 VLOG(1) <<
"Initialize a " << device_str <<
" perfect hash table for join type "
48 <<
::toString(layout) <<
" # hash entries: " << entry_count
49 <<
", # entries stored in the payload buffer: " << emitted_keys_count
size_t cpu_hash_table_buff_size_
std::unique_ptr< int32_t[]> cpu_hash_table_buff_
size_t emitted_keys_count_
static std::string toString(const std::string &type, const std::string &layout_type, size_t key_component_count, size_t key_component_width, size_t entry_count, const int8_t *ptr1, const int8_t *ptr2, const int8_t *ptr3, const int8_t *ptr4, size_t buffer_size, bool raw=false)
Decode hash table into a human-readable string.
Data_Namespace::DataMgr * data_mgr_
PerfectHashTable::~PerfectHashTable |
( |
| ) |
|
|
inlineoverride |
void PerfectHashTable::allocateGpuMemory |
( |
const size_t |
entries, |
|
|
const int |
device_id |
|
) |
| |
|
inline |
size_t PerfectHashTable::getColumnNumElems |
( |
| ) |
const |
|
inline |
int8_t* PerfectHashTable::getCpuBuffer |
( |
| ) |
|
|
inlineoverridevirtual |
size_t PerfectHashTable::getEmittedKeysCount |
( |
| ) |
const |
|
inlineoverridevirtual |
size_t PerfectHashTable::getEntryCount |
( |
| ) |
const |
|
inlineoverridevirtual |
int8_t* PerfectHashTable::getGpuBuffer |
( |
| ) |
const |
|
inlineoverridevirtual |
size_t PerfectHashTable::getHashTableBufferSize |
( |
const ExecutorDeviceType |
device_type | ) |
const |
|
inlineoverridevirtual |
HashType PerfectHashTable::getLayout |
( |
| ) |
const |
|
inlineoverridevirtual |
size_t PerfectHashTable::gpuReservedSize |
( |
| ) |
const |
|
inline |
void PerfectHashTable::setColumnNumElems |
( |
size_t |
elem | ) |
|
|
inline |
size_t PerfectHashTable::column_num_elems_ |
|
private |
std::unique_ptr<int32_t[]> PerfectHashTable::cpu_hash_table_buff_ |
|
private |
size_t PerfectHashTable::cpu_hash_table_buff_size_ |
|
private |
size_t PerfectHashTable::emitted_keys_count_ |
|
private |
size_t PerfectHashTable::entry_count_ |
|
private |
The documentation for this class was generated from the following file:
- /home/jenkins-slave/workspace/core-os-doxygen/QueryEngine/JoinHashTable/PerfectHashTable.h