OmniSciDB
a5dc49c757
|
#include <BaselineHashTableBuilder.h>
Public Member Functions | |
BaselineJoinHashTableBuilder ()=default | |
template<class KEY_HANDLER > | |
int | initHashTableOnCpu (KEY_HANDLER *key_handler, const CompositeKeyInfo &composite_key_info, const std::vector< JoinColumn > &join_columns, const std::vector< JoinColumnTypeInfo > &join_column_types, const std::vector< JoinBucketInfo > &join_bucket_info, const StrProxyTranslationMapsPtrsAndOffsets &str_proxy_translation_maps_ptrs_and_offsets, const BaselineHashTableEntryInfo hash_table_entry_info, const JoinType join_type, const Executor *executor, const RegisteredQueryHint &query_hint) |
void | allocateDeviceMemory (const BaselineHashTableEntryInfo hash_table_entry_info, const int device_id, const Executor *executor, const RegisteredQueryHint &query_hint) |
template<class KEY_HANDLER > | |
int | initHashTableOnGpu (KEY_HANDLER *key_handler, const std::vector< JoinColumn > &join_columns, const JoinType join_type, const BaselineHashTableEntryInfo hash_table_entry_info, const int device_id, const Executor *executor, const RegisteredQueryHint &query_hint) |
std::unique_ptr < BaselineHashTable > | getHashTable () |
void | setHashLayout (HashType layout) |
HashType | getHashLayout () const |
Private Attributes | |
std::unique_ptr < BaselineHashTable > | hash_table_ |
HashType | layout_ |
Definition at line 261 of file BaselineHashTableBuilder.h.
|
default |
|
inline |
Definition at line 484 of file BaselineHashTableBuilder.h.
References BaselineHashTableEntryInfo::computeHashTableSize(), Data_Namespace::GPU_LEVEL, hash_table_, RegisteredQueryHint::isHintRegistered(), kMaxJoinHashTableSize, RegisteredQueryHint::max_join_hash_table_size, and UNREACHABLE.
Referenced by BaselineJoinHashTable::copyCpuHashTableToGpu(), and initHashTableOnGpu().
|
inline |
|
inline |
Definition at line 643 of file BaselineHashTableBuilder.h.
References hash_table_.
Referenced by BaselineJoinHashTable::copyCpuHashTableToGpu(), and BaselineJoinHashTable::initHashTableForDevice().
|
inline |
Definition at line 265 of file BaselineHashTableBuilder.h.
References ANTI, threading_serial::async(), CHECK, BaselineHashTableEntryInfo::computeHashTableSize(), Data_Namespace::CPU_LEVEL, cpu_threads(), DEBUG_TIMER, DEBUG_TIMER_NEW_THREAD, fill_one_to_many_baseline_hash_table_32(), fill_one_to_many_baseline_hash_table_64(), HashTableEntryInfo::getHashTableLayout(), hash_table_, init_baseline_hash_join_buff_32(), init_baseline_hash_join_buff_64(), init_hash_join_buff(), RegisteredQueryHint::isHintRegistered(), kMaxJoinHashTableSize, HashJoin::layoutRequiresAdditionalBuffers(), RegisteredQueryHint::max_join_hash_table_size, OneToOne, SEMI, setHashLayout(), logger::thread_local_ids(), UNREACHABLE, VLOG, and WINDOW_FUNCTION_FRAMING.
Referenced by BaselineJoinHashTable::initHashTableForDevice(), and BoundingBoxIntersectJoinHashTable::initHashTableOnCpu().
|
inline |
Definition at line 506 of file BaselineHashTableBuilder.h.
References allocateDeviceMemory(), ANTI, CHECK, BaselineHashTableEntryInfo::computeKeySize(), DEBUG_TIMER, HashTableEntryInfo::getHashTableLayout(), BaselineHashTableEntryInfo::getJoinKeysSize(), HashTableEntryInfo::getNumHashEntries(), BaselineHashTableEntryInfo::getNumJoinKeys(), HashTableEntryInfo::getNumKeys(), getQueryEngineCudaStreamForDevice(), hash_table_, init_baseline_hash_join_buff_on_device_32(), init_baseline_hash_join_buff_on_device_64(), init_hash_join_buff_on_device(), HashJoin::layoutRequiresAdditionalBuffers(), OneToOne, SEMI, setHashLayout(), transfer_flat_object_to_gpu(), UNREACHABLE, VLOG, and WINDOW_FUNCTION_FRAMING.
Referenced by BaselineJoinHashTable::initHashTableForDevice().
|
inline |
Definition at line 647 of file BaselineHashTableBuilder.h.
References layout_.
Referenced by initHashTableOnCpu(), and initHashTableOnGpu().
|
private |
Definition at line 656 of file BaselineHashTableBuilder.h.
Referenced by allocateDeviceMemory(), getHashTable(), initHashTableOnCpu(), and initHashTableOnGpu().
|
private |
Definition at line 657 of file BaselineHashTableBuilder.h.
Referenced by getHashLayout(), and setHashLayout().