OmniSciDB
0264ff685a
|
#include "Analyzer/Analyzer.h"
#include "Catalog/Catalog.h"
#include "DataMgr/Allocators/ThrustAllocator.h"
#include "DataMgr/Chunk/Chunk.h"
#include "QueryEngine/ColumnarResults.h"
#include "QueryEngine/Descriptors/InputDescriptors.h"
#include "QueryEngine/Descriptors/RowSetMemoryOwner.h"
#include "QueryEngine/ExpressionRange.h"
#include "QueryEngine/InputMetadata.h"
#include "QueryEngine/JoinHashTable/HashJoin.h"
#include "QueryEngine/JoinHashTable/HashTableCache.h"
#include "QueryEngine/JoinHashTable/PerfectHashTable.h"
#include <llvm/IR/Value.h>
#include <functional>
#include <memory>
#include <mutex>
#include <stdexcept>
Go to the source code of this file.
Classes | |
class | PerfectJoinHashTable |
struct | PerfectJoinHashTable::JoinHashTableCacheKey |
Functions | |
bool | needs_dictionary_translation (const Analyzer::ColumnVar *inner_col, const Analyzer::Expr *outer_col, const Executor *executor) |
std::vector< Fragmenter_Namespace::FragmentInfo > | only_shards_for_device (const std::vector< Fragmenter_Namespace::FragmentInfo > &fragments, const int device_id, const int device_count) |
const InputTableInfo & | get_inner_query_info (const int inner_table_id, const std::vector< InputTableInfo > &query_infos) |
size_t | get_entries_per_device (const size_t total_entries, const size_t shard_count, const size_t device_count, const Data_Namespace::MemoryLevel memory_level) |
size_t get_entries_per_device | ( | const size_t | total_entries, |
const size_t | shard_count, | ||
const size_t | device_count, | ||
const Data_Namespace::MemoryLevel | memory_level | ||
) |
Definition at line 959 of file PerfectJoinHashTable.cpp.
References CHECK_GT, and Data_Namespace::GPU_LEVEL.
Referenced by OverlapsJoinHashTable::calculateCounts(), OverlapsJoinHashTable::getInstance(), and BaselineJoinHashTable::reifyWithLayout().
const InputTableInfo& get_inner_query_info | ( | const int | inner_table_id, |
const std::vector< InputTableInfo > & | query_infos | ||
) |
Definition at line 945 of file PerfectJoinHashTable.cpp.
References CHECK.
Referenced by PerfectJoinHashTable::getInnerQueryInfo(), OverlapsJoinHashTable::getInstance(), OverlapsJoinHashTable::reifyWithLayout(), and BaselineJoinHashTable::reifyWithLayout().
bool needs_dictionary_translation | ( | const Analyzer::ColumnVar * | inner_col, |
const Analyzer::Expr * | outer_col, | ||
const Executor * | executor | ||
) |
Definition at line 255 of file PerfectJoinHashTable.cpp.
References CHECK, CHECK_EQ, get_column_descriptor_maybe(), Analyzer::ColumnVar::get_column_id(), get_column_type(), and Analyzer::ColumnVar::get_table_id().
Referenced by PerfectJoinHashTable::getEffectiveMemoryLevel(), and BaselineJoinHashTable::getEffectiveMemoryLevel().
std::vector<Fragmenter_Namespace::FragmentInfo> only_shards_for_device | ( | const std::vector< Fragmenter_Namespace::FragmentInfo > & | fragments, |
const int | device_id, | ||
const int | device_count | ||
) |
Definition at line 287 of file PerfectJoinHashTable.cpp.
References CHECK_GE.
Referenced by PerfectJoinHashTable::reify(), OverlapsJoinHashTable::reifyWithLayout(), and BaselineJoinHashTable::reifyWithLayout().