OmniSciDB
a5dc49c757
|
#include "Shared/funcannotations.h"
#include <cassert>
#include <cstdint>
#include <ctime>
#include <limits>
#include <type_traits>
Go to the source code of this file.
Macros | |
#define | EMPTY_KEY_64 std::numeric_limits<int64_t>::max() |
#define | EMPTY_KEY_32 std::numeric_limits<int32_t>::max() |
#define | EMPTY_KEY_16 std::numeric_limits<int16_t>::max() |
#define | EMPTY_KEY_8 std::numeric_limits<int8_t>::max() |
Enumerations | |
enum | RuntimeInterruptFlags { INT_CHECK = 0, INT_ABORT = -1, INT_RESET = -2 } |
Functions | |
RUNTIME_EXPORT int64_t | agg_sum (int64_t *agg, const int64_t val) |
RUNTIME_EXPORT int64_t | agg_sum_if (int64_t *agg, const int64_t val, const int8_t cond) |
RUNTIME_EXPORT void | agg_max (int64_t *agg, const int64_t val) |
RUNTIME_EXPORT void | agg_min (int64_t *agg, const int64_t val) |
RUNTIME_EXPORT void | agg_sum_double (int64_t *agg, const double val) |
RUNTIME_EXPORT void | agg_sum_if_double (int64_t *agg, const double val, const int8_t cond) |
RUNTIME_EXPORT void | agg_max_double (int64_t *agg, const double val) |
RUNTIME_EXPORT void | agg_min_double (int64_t *agg, const double val) |
RUNTIME_EXPORT int32_t | agg_sum_int32_skip_val (int32_t *agg, const int32_t val, const int32_t skip_val) |
RUNTIME_EXPORT int64_t | agg_sum_skip_val (int64_t *agg, const int64_t val, const int64_t skip_val) |
RUNTIME_EXPORT int32_t | agg_sum_if_int32_skip_val (int32_t *agg, const int32_t val, const int32_t skip_val, const int8_t cond) |
RUNTIME_EXPORT int64_t | agg_sum_if_skip_val (int64_t *agg, const int64_t val, const int64_t skip_val, const int8_t cond) |
RUNTIME_EXPORT void | agg_max_skip_val (int64_t *agg, const int64_t val, const int64_t skip_val) |
RUNTIME_EXPORT void | agg_min_skip_val (int64_t *agg, const int64_t val, const int64_t skip_val) |
RUNTIME_EXPORT void | agg_sum_float_skip_val (int32_t *agg, const float val, const float skip_val) |
RUNTIME_EXPORT void | agg_sum_double_skip_val (int64_t *agg, const double val, const double skip_val) |
RUNTIME_EXPORT void | agg_sum_if_float_skip_val (int32_t *agg, const float val, const float skip_val, const int8_t cond) |
RUNTIME_EXPORT void | agg_sum_if_double_skip_val (int64_t *agg, const double val, const double skip_val, const int8_t cond) |
RUNTIME_EXPORT void | agg_max_double_skip_val (int64_t *agg, const double val, const double skip_val) |
RUNTIME_EXPORT void | agg_min_double_skip_val (int64_t *agg, const double val, const double skip_val) |
RUNTIME_EXPORT int32_t | agg_sum_int32 (int32_t *agg, const int32_t val) |
RUNTIME_EXPORT int32_t | agg_sum_if_int32 (int32_t *agg, const int32_t val, const int8_t cond) |
RUNTIME_EXPORT void | agg_max_int32 (int32_t *agg, const int32_t val) |
RUNTIME_EXPORT void | agg_max_int16 (int16_t *agg, const int16_t val) |
RUNTIME_EXPORT void | agg_max_int8 (int8_t *agg, const int8_t val) |
RUNTIME_EXPORT void | agg_min_int32 (int32_t *agg, const int32_t val) |
RUNTIME_EXPORT void | agg_min_int16 (int16_t *agg, const int16_t val) |
RUNTIME_EXPORT void | agg_min_int8 (int8_t *agg, const int8_t val) |
RUNTIME_EXPORT void | agg_sum_float (int32_t *agg, const float val) |
RUNTIME_EXPORT void | agg_sum_if_float (int32_t *agg, const float val, const int8_t cond) |
RUNTIME_EXPORT void | agg_max_float (int32_t *agg, const float val) |
RUNTIME_EXPORT void | agg_min_float (int32_t *agg, const float val) |
RUNTIME_EXPORT void | agg_max_int32_skip_val (int32_t *agg, const int32_t val, const int32_t skip_val) |
RUNTIME_EXPORT void | agg_max_int16_skip_val (int16_t *agg, const int16_t val, const int16_t skip_val) |
RUNTIME_EXPORT void | agg_max_int8_skip_val (int8_t *agg, const int8_t val, const int8_t skip_val) |
RUNTIME_EXPORT void | agg_min_int32_skip_val (int32_t *agg, const int32_t val, const int32_t skip_val) |
RUNTIME_EXPORT void | agg_min_int16_skip_val (int16_t *agg, const int16_t val, const int16_t skip_val) |
RUNTIME_EXPORT void | agg_min_int8_skip_val (int8_t *agg, const int8_t val, const int8_t skip_val) |
RUNTIME_EXPORT void | agg_max_float_skip_val (int32_t *agg, const float val, const float skip_val) |
RUNTIME_EXPORT void | agg_min_float_skip_val (int32_t *agg, const float val, const float skip_val) |
RUNTIME_EXPORT void | agg_count_distinct_bitmap (int64_t *agg, const int64_t val, const int64_t min_val, const int64_t bucket_size) |
RUNTIME_EXPORT uint32_t | key_hash (const int64_t *key, const uint32_t key_qw_count, const uint32_t key_byte_width) |
RUNTIME_EXPORT int64_t * | get_group_value (int64_t *groups_buffer, const uint32_t groups_buffer_entry_count, const int64_t *key, const uint32_t key_count, const uint32_t key_width, const uint32_t row_size_quad) |
bool RUNTIME_EXPORT | check_interrupt () |
bool RUNTIME_EXPORT | check_interrupt_init (unsigned command) |
RUNTIME_EXPORT int64_t * | get_group_value_with_watchdog (int64_t *groups_buffer, const uint32_t groups_buffer_entry_count, const int64_t *key, const uint32_t key_count, const uint32_t key_width, const uint32_t row_size_quad) |
RUNTIME_EXPORT int64_t * | get_group_value_columnar (int64_t *groups_buffer, const uint32_t groups_buffer_entry_count, const int64_t *key, const uint32_t key_qw_count) |
RUNTIME_EXPORT int64_t * | get_group_value_columnar_with_watchdog (int64_t *groups_buffer, const uint32_t groups_buffer_entry_count, const int64_t *key, const uint32_t key_qw_count) |
RUNTIME_EXPORT int64_t * | get_group_value_fast (int64_t *groups_buffer, const int64_t key, const int64_t min_key, const int64_t bucket, const uint32_t row_size_quad) |
RUNTIME_EXPORT int64_t * | get_group_value_fast_with_original_key (int64_t *groups_buffer, const int64_t key, const int64_t orig_key, const int64_t min_key, const int64_t bucket, const uint32_t row_size_quad) |
RUNTIME_EXPORT uint32_t | get_columnar_group_bin_offset (int64_t *key_base_ptr, const int64_t key, const int64_t min_key, const int64_t bucket) |
RUNTIME_EXPORT int64_t * | get_matching_group_value_perfect_hash (int64_t *groups_buffer, const uint32_t h, const int64_t *key, const uint32_t key_qw_count, const uint32_t row_size_quad) |
RUNTIME_EXPORT int64_t * | get_matching_group_value_perfect_hash_keyless (int64_t *groups_buffer, const uint32_t hashed_index, const uint32_t row_size_quad) |
RUNTIME_EXPORT int32_t * | get_bucketized_hash_slot (int32_t *buff, const int64_t key, const int64_t min_key, const int64_t translated_null_val, const int64_t bucket_normalization=1) |
RUNTIME_EXPORT int32_t * | get_hash_slot_bitwise_eq (int32_t *buff, const int64_t key, const int64_t min_key, const int64_t translated_null_val) |
RUNTIME_EXPORT int32_t * | get_hash_slot (int32_t *buff, const int64_t key, const int64_t min_key) |
RUNTIME_EXPORT int32_t * | get_hash_slot_sharded (int32_t *buff, const int64_t key, const int64_t min_key, const uint32_t entry_count_per_shard, const uint32_t num_shards, const uint32_t device_count) |
RUNTIME_EXPORT int32_t * | get_bucketized_hash_slot_sharded (int32_t *buff, const int64_t key, const int64_t min_key, const int64_t translated_null_val, const uint32_t entry_count_per_shard, const uint32_t num_shards, const uint32_t device_count, const int64_t bucket_normalization) |
RUNTIME_EXPORT int32_t * | get_hash_slot_sharded_opt (int32_t *buff, const int64_t key, const int64_t min_key, const uint32_t entry_count_per_shard, const uint32_t shard, const uint32_t num_shards, const uint32_t device_count) |
RUNTIME_EXPORT int32_t * | get_bucketized_hash_slot_sharded_opt (int32_t *buff, const int64_t key, const int64_t min_key, const int64_t translated_null_val, const uint32_t entry_count_per_shard, const uint32_t shard, const uint32_t num_shards, const uint32_t device_count, const int64_t bucket_normalization) |
RUNTIME_EXPORT int | fill_one_to_one_hashtable (size_t idx, int32_t *entry_ptr, const int32_t invalid_slot_val) |
RUNTIME_EXPORT int | fill_hashtable_for_semi_join (size_t idx, int32_t *entry_ptr, const int32_t invalid_slot_val) |
RUNTIME_EXPORT void | linear_probabilistic_count (uint8_t *bitmap, const uint32_t bitmap_bytes, const uint8_t *key_bytes, const uint32_t key_len) |
RUNTIME_EXPORT int64_t | fixed_width_int_decode_noinline (const int8_t *byte_stream, const int32_t byte_width, const int64_t pos) |
RUNTIME_EXPORT int64_t | fixed_width_unsigned_decode_noinline (const int8_t *byte_stream, const int32_t byte_width, const int64_t pos) |
RUNTIME_EXPORT float | fixed_width_float_decode_noinline (const int8_t *byte_stream, const int64_t pos) |
RUNTIME_EXPORT double | fixed_width_double_decode_noinline (const int8_t *byte_stream, const int64_t pos) |
RUNTIME_EXPORT int64_t | fixed_width_small_date_decode_noinline (const int8_t *byte_stream, const int32_t byte_width, const int32_t null_val, const int64_t ret_null_val, const int64_t pos) |
DEVICE NEVER_INLINE int64_t SUFFIX() | fixed_width_date_encode_noinline (const int64_t cur_col_val, const int32_t null_val, const int64_t ret_null_val) |
template<typename T = int64_t> | |
T | get_empty_key () |
template<> | |
int32_t | get_empty_key () |
#define EMPTY_KEY_16 std::numeric_limits<int16_t>::max() |
Definition at line 159 of file RuntimeFunctions.h.
#define EMPTY_KEY_32 std::numeric_limits<int32_t>::max() |
Definition at line 158 of file RuntimeFunctions.h.
Referenced by get_empty_key().
#define EMPTY_KEY_64 std::numeric_limits<int64_t>::max() |
Definition at line 157 of file RuntimeFunctions.h.
Referenced by get_empty_key().
#define EMPTY_KEY_8 std::numeric_limits<int8_t>::max() |
Definition at line 160 of file RuntimeFunctions.h.
Enumerator | |
---|---|
INT_CHECK | |
INT_ABORT | |
INT_RESET |
Definition at line 174 of file RuntimeFunctions.h.
RUNTIME_EXPORT void agg_count_distinct_bitmap | ( | int64_t * | agg, |
const int64_t | val, | ||
const int64_t | min_val, | ||
const int64_t | bucket_size | ||
) |
Definition at line 366 of file RuntimeFunctions.cpp.
Referenced by agg_count_distinct_bitmap_skip_val(), WindowFunctionContext::fillPartitionEnd(), WindowFunctionContext::fillPartitionStart(), anonymous_namespace{WindowContext.cpp}::index_to_partition_end(), and InValuesBitmap::InValuesBitmap().
RUNTIME_EXPORT void agg_max | ( | int64_t * | agg, |
const int64_t | val | ||
) |
Definition at line 1140 of file RuntimeFunctions.cpp.
RUNTIME_EXPORT void agg_max_double | ( | int64_t * | agg, |
const double | val | ||
) |
Definition at line 1436 of file RuntimeFunctions.cpp.
RUNTIME_EXPORT void agg_max_double_skip_val | ( | int64_t * | agg, |
const double | val, | ||
const double | skip_val | ||
) |
RUNTIME_EXPORT void agg_max_float | ( | int32_t * | agg, |
const float | val | ||
) |
Definition at line 1489 of file RuntimeFunctions.cpp.
RUNTIME_EXPORT void agg_max_float_skip_val | ( | int32_t * | agg, |
const float | val, | ||
const float | skip_val | ||
) |
RUNTIME_EXPORT void agg_max_int16 | ( | int16_t * | agg, |
const int16_t | val | ||
) |
RUNTIME_EXPORT void agg_max_int16_skip_val | ( | int16_t * | agg, |
const int16_t | val, | ||
const int16_t | skip_val | ||
) |
RUNTIME_EXPORT void agg_max_int32 | ( | int32_t * | agg, |
const int32_t | val | ||
) |
RUNTIME_EXPORT void agg_max_int32_skip_val | ( | int32_t * | agg, |
const int32_t | val, | ||
const int32_t | skip_val | ||
) |
RUNTIME_EXPORT void agg_max_int8 | ( | int8_t * | agg, |
const int8_t | val | ||
) |
RUNTIME_EXPORT void agg_max_int8_skip_val | ( | int8_t * | agg, |
const int8_t | val, | ||
const int8_t | skip_val | ||
) |
RUNTIME_EXPORT void agg_max_skip_val | ( | int64_t * | agg, |
const int64_t | val, | ||
const int64_t | skip_val | ||
) |
RUNTIME_EXPORT void agg_min | ( | int64_t * | agg, |
const int64_t | val | ||
) |
Definition at line 1144 of file RuntimeFunctions.cpp.
RUNTIME_EXPORT void agg_min_double | ( | int64_t * | agg, |
const double | val | ||
) |
Definition at line 1442 of file RuntimeFunctions.cpp.
RUNTIME_EXPORT void agg_min_double_skip_val | ( | int64_t * | agg, |
const double | val, | ||
const double | skip_val | ||
) |
RUNTIME_EXPORT void agg_min_float | ( | int32_t * | agg, |
const float | val | ||
) |
Definition at line 1495 of file RuntimeFunctions.cpp.
RUNTIME_EXPORT void agg_min_float_skip_val | ( | int32_t * | agg, |
const float | val, | ||
const float | skip_val | ||
) |
RUNTIME_EXPORT void agg_min_int16 | ( | int16_t * | agg, |
const int16_t | val | ||
) |
RUNTIME_EXPORT void agg_min_int16_skip_val | ( | int16_t * | agg, |
const int16_t | val, | ||
const int16_t | skip_val | ||
) |
RUNTIME_EXPORT void agg_min_int32 | ( | int32_t * | agg, |
const int32_t | val | ||
) |
RUNTIME_EXPORT void agg_min_int32_skip_val | ( | int32_t * | agg, |
const int32_t | val, | ||
const int32_t | skip_val | ||
) |
RUNTIME_EXPORT void agg_min_int8 | ( | int8_t * | agg, |
const int8_t | val | ||
) |
RUNTIME_EXPORT void agg_min_int8_skip_val | ( | int8_t * | agg, |
const int8_t | val, | ||
const int8_t | skip_val | ||
) |
RUNTIME_EXPORT void agg_min_skip_val | ( | int64_t * | agg, |
const int64_t | val, | ||
const int64_t | skip_val | ||
) |
RUNTIME_EXPORT int64_t agg_sum | ( | int64_t * | agg, |
const int64_t | val | ||
) |
Definition at line 1128 of file RuntimeFunctions.cpp.
Referenced by agg_sum_if(), and agg_sum_skip_val().
RUNTIME_EXPORT void agg_sum_double | ( | int64_t * | agg, |
const double | val | ||
) |
Definition at line 1422 of file RuntimeFunctions.cpp.
Referenced by agg_sum_if_double().
RUNTIME_EXPORT void agg_sum_double_skip_val | ( | int64_t * | agg, |
const double | val, | ||
const double | skip_val | ||
) |
RUNTIME_EXPORT void agg_sum_float | ( | int32_t * | agg, |
const float | val | ||
) |
Definition at line 1475 of file RuntimeFunctions.cpp.
Referenced by agg_if_sum_float().
RUNTIME_EXPORT void agg_sum_float_skip_val | ( | int32_t * | agg, |
const float | val, | ||
const float | skip_val | ||
) |
RUNTIME_EXPORT int64_t agg_sum_if | ( | int64_t * | agg, |
const int64_t | val, | ||
const int8_t | cond | ||
) |
Definition at line 1134 of file RuntimeFunctions.cpp.
References agg_sum().
RUNTIME_EXPORT void agg_sum_if_double | ( | int64_t * | agg, |
const double | val, | ||
const int8_t | cond | ||
) |
Definition at line 1428 of file RuntimeFunctions.cpp.
References agg_sum_double().
RUNTIME_EXPORT void agg_sum_if_double_skip_val | ( | int64_t * | agg, |
const double | val, | ||
const double | skip_val, | ||
const int8_t | cond | ||
) |
RUNTIME_EXPORT void agg_sum_if_float | ( | int32_t * | agg, |
const float | val, | ||
const int8_t | cond | ||
) |
RUNTIME_EXPORT void agg_sum_if_float_skip_val | ( | int32_t * | agg, |
const float | val, | ||
const float | skip_val, | ||
const int8_t | cond | ||
) |
RUNTIME_EXPORT int32_t agg_sum_if_int32 | ( | int32_t * | agg, |
const int32_t | val, | ||
const int8_t | cond | ||
) |
Definition at line 1217 of file RuntimeFunctions.cpp.
References agg_sum_int32().
RUNTIME_EXPORT int32_t agg_sum_if_int32_skip_val | ( | int32_t * | agg, |
const int32_t | val, | ||
const int32_t | skip_val, | ||
const int8_t | cond | ||
) |
Definition at line 1327 of file RuntimeFunctions.cpp.
References agg_sum_int32_skip_val().
RUNTIME_EXPORT int64_t agg_sum_if_skip_val | ( | int64_t * | agg, |
const int64_t | val, | ||
const int64_t | skip_val, | ||
const int8_t | cond | ||
) |
Definition at line 1319 of file RuntimeFunctions.cpp.
References agg_sum_skip_val().
RUNTIME_EXPORT int32_t agg_sum_int32 | ( | int32_t * | agg, |
const int32_t | val | ||
) |
Definition at line 1210 of file RuntimeFunctions.cpp.
Referenced by agg_sum_if_int32(), and agg_sum_int32_skip_val().
RUNTIME_EXPORT int32_t agg_sum_int32_skip_val | ( | int32_t * | agg, |
const int32_t | val, | ||
const int32_t | skip_val | ||
) |
Definition at line 1306 of file RuntimeFunctions.cpp.
References agg_sum_int32().
Referenced by agg_sum_if_int32_skip_val().
RUNTIME_EXPORT int64_t agg_sum_skip_val | ( | int64_t * | agg, |
const int64_t | val, | ||
const int64_t | skip_val | ||
) |
Definition at line 1291 of file RuntimeFunctions.cpp.
References agg_sum().
Referenced by agg_sum_if_skip_val(), and Executor::reduceResults().
bool RUNTIME_EXPORT check_interrupt | ( | ) |
Definition at line 159 of file cuda_mapd_rt.cu.
References check_interrupt_init(), INT_CHECK, and runtime_interrupt_flag.
Referenced by check_interrupt_rt(), and ColumnFetcher::linearizeFixedLenArrayColFrags().
bool RUNTIME_EXPORT check_interrupt_init | ( | unsigned | command | ) |
Definition at line 2523 of file RuntimeFunctions.cpp.
References INT_ABORT, INT_CHECK, INT_RESET, and runtime_interrupt_flag.
Referenced by check_interrupt(), Executor::interrupt(), and Executor::resetInterrupt().
RUNTIME_EXPORT int fill_hashtable_for_semi_join | ( | size_t | idx, |
int32_t * | entry_ptr, | ||
const int32_t | invalid_slot_val | ||
) |
Definition at line 54 of file JoinHashImpl.h.
References insert_key_cas.
Referenced by fill_hash_join_buff(), fill_hash_join_buff_bitwise_eq(), fill_hash_join_buff_bucketized(), fill_hash_join_buff_sharded(), and fill_hash_join_buff_sharded_bucketized().
RUNTIME_EXPORT int fill_one_to_one_hashtable | ( | size_t | idx, |
int32_t * | entry_ptr, | ||
const int32_t | invalid_slot_val | ||
) |
Definition at line 44 of file JoinHashImpl.h.
References insert_key_cas.
Referenced by fill_hash_join_buff(), fill_hash_join_buff_bitwise_eq(), fill_hash_join_buff_bucketized(), fill_hash_join_buff_sharded(), and fill_hash_join_buff_sharded_bucketized().
DEVICE NEVER_INLINE int64_t SUFFIX() fixed_width_date_encode_noinline | ( | const int64_t | cur_col_val, |
const int32_t | null_val, | ||
const int64_t | ret_null_val | ||
) |
Definition at line 173 of file DecodersImpl.h.
References fixed_width_date_encode(), and SUFFIX.
RUNTIME_EXPORT double fixed_width_double_decode_noinline | ( | const int8_t * | byte_stream, |
const int64_t | pos | ||
) |
Definition at line 134 of file DecodersImpl.h.
References fixed_width_double_decode(), and SUFFIX.
Referenced by compute_bucket_sizes_impl(), JoinColumnIterator::getElementSwitch(), result_set::lazy_decode(), BoundingBoxIntersectKeyHandler::operator()(), and RangeKeyHandler::operator()().
RUNTIME_EXPORT float fixed_width_float_decode_noinline | ( | const int8_t * | byte_stream, |
const int64_t | pos | ||
) |
Definition at line 121 of file DecodersImpl.h.
References fixed_width_float_decode(), and SUFFIX.
Referenced by result_set::lazy_decode().
RUNTIME_EXPORT int64_t fixed_width_int_decode_noinline | ( | const int8_t * | byte_stream, |
const int32_t | byte_width, | ||
const int64_t | pos | ||
) |
Definition at line 91 of file DecodersImpl.h.
References fixed_width_int_decode(), and SUFFIX.
Referenced by JoinColumnIterator::getElementSwitch(), result_set::lazy_decode(), and RangeKeyHandler::operator()().
RUNTIME_EXPORT int64_t fixed_width_small_date_decode_noinline | ( | const int8_t * | byte_stream, |
const int32_t | byte_width, | ||
const int32_t | null_val, | ||
const int64_t | ret_null_val, | ||
const int64_t | pos | ||
) |
Definition at line 149 of file DecodersImpl.h.
References fixed_width_small_date_decode(), and SUFFIX.
Referenced by JoinColumnIterator::getElementSwitch(), and result_set::lazy_decode().
RUNTIME_EXPORT int64_t fixed_width_unsigned_decode_noinline | ( | const int8_t * | byte_stream, |
const int32_t | byte_width, | ||
const int64_t | pos | ||
) |
Definition at line 98 of file DecodersImpl.h.
References fixed_width_unsigned_decode(), and SUFFIX.
Referenced by JoinColumnIterator::getElementSwitch(), and result_set::lazy_decode().
RUNTIME_EXPORT int32_t* get_bucketized_hash_slot | ( | int32_t * | buff, |
const int64_t | key, | ||
const int64_t | min_key, | ||
const int64_t | translated_null_val, | ||
const int64_t | bucket_normalization = 1 |
||
) |
Definition at line 66 of file JoinHashImpl.h.
Referenced by bucketized_hash_join_idx(), count_matches_bucketized(), fill_hash_join_buff_bucketized(), and fill_row_ids_bucketized().
RUNTIME_EXPORT int32_t* get_bucketized_hash_slot_sharded | ( | int32_t * | buff, |
const int64_t | key, | ||
const int64_t | min_key, | ||
const int64_t | translated_null_val, | ||
const uint32_t | entry_count_per_shard, | ||
const uint32_t | num_shards, | ||
const uint32_t | device_count, | ||
const int64_t | bucket_normalization | ||
) |
Definition at line 90 of file JoinHashImpl.h.
References SHARD_FOR_KEY.
Referenced by fill_row_ids_sharded_bucketized().
RUNTIME_EXPORT int32_t* get_bucketized_hash_slot_sharded_opt | ( | int32_t * | buff, |
const int64_t | key, | ||
const int64_t | min_key, | ||
const int64_t | translated_null_val, | ||
const uint32_t | entry_count_per_shard, | ||
const uint32_t | shard, | ||
const uint32_t | num_shards, | ||
const uint32_t | device_count, | ||
const int64_t | bucket_normalization | ||
) |
Definition at line 122 of file JoinHashImpl.h.
Referenced by fill_hash_join_buff_sharded_bucketized().
RUNTIME_EXPORT uint32_t get_columnar_group_bin_offset | ( | int64_t * | key_base_ptr, |
const int64_t | key, | ||
const int64_t | min_key, | ||
const int64_t | bucket | ||
) |
|
inline |
|
inline |
RUNTIME_EXPORT int64_t* get_group_value | ( | int64_t * | groups_buffer, |
const uint32_t | groups_buffer_entry_count, | ||
const int64_t * | key, | ||
const uint32_t | key_count, | ||
const uint32_t | key_width, | ||
const uint32_t | row_size_quad | ||
) |
Definition at line 25 of file GroupByRuntime.cpp.
References get_matching_group_value(), and key_hash().
Referenced by ResultSetStorage::moveOneEntryToBuffer().
RUNTIME_EXPORT int64_t* get_group_value_columnar | ( | int64_t * | groups_buffer, |
const uint32_t | groups_buffer_entry_count, | ||
const int64_t * | key, | ||
const uint32_t | key_qw_count | ||
) |
Definition at line 139 of file GroupByRuntime.cpp.
References get_matching_group_value_columnar(), and key_hash().
Referenced by ResultSetStorage::moveOneEntryToBuffer().
RUNTIME_EXPORT int64_t* get_group_value_columnar_with_watchdog | ( | int64_t * | groups_buffer, |
const uint32_t | groups_buffer_entry_count, | ||
const int64_t * | key, | ||
const uint32_t | key_qw_count | ||
) |
Definition at line 163 of file GroupByRuntime.cpp.
References dynamic_watchdog(), get_matching_group_value_columnar(), and key_hash().
RUNTIME_EXPORT int64_t* get_group_value_fast | ( | int64_t * | groups_buffer, |
const int64_t | key, | ||
const int64_t | min_key, | ||
const int64_t | bucket, | ||
const uint32_t | row_size_quad | ||
) |
RUNTIME_EXPORT int64_t* get_group_value_fast_with_original_key | ( | int64_t * | groups_buffer, |
const int64_t | key, | ||
const int64_t | orig_key, | ||
const int64_t | min_key, | ||
const int64_t | bucket, | ||
const uint32_t | row_size_quad | ||
) |
RUNTIME_EXPORT int64_t* get_group_value_with_watchdog | ( | int64_t * | groups_buffer, |
const uint32_t | groups_buffer_entry_count, | ||
const int64_t * | key, | ||
const uint32_t | key_count, | ||
const uint32_t | key_width, | ||
const uint32_t | row_size_quad | ||
) |
Definition at line 52 of file GroupByRuntime.cpp.
References dynamic_watchdog(), get_matching_group_value(), and key_hash().
RUNTIME_EXPORT int32_t* get_hash_slot | ( | int32_t * | buff, |
const int64_t | key, | ||
const int64_t | min_key | ||
) |
Definition at line 76 of file JoinHashImpl.h.
Referenced by count_matches(), fill_hash_join_buff(), fill_row_ids(), and hash_join_idx().
RUNTIME_EXPORT int32_t* get_hash_slot_bitwise_eq | ( | int32_t * | buff, |
const int64_t | key, | ||
const int64_t | min_key, | ||
const int64_t | translated_null_val | ||
) |
Definition at line 82 of file JoinHashImpl.h.
Referenced by fill_hash_join_buff_bitwise_eq().
RUNTIME_EXPORT int32_t* get_hash_slot_sharded | ( | int32_t * | buff, |
const int64_t | key, | ||
const int64_t | min_key, | ||
const uint32_t | entry_count_per_shard, | ||
const uint32_t | num_shards, | ||
const uint32_t | device_count | ||
) |
Definition at line 108 of file JoinHashImpl.h.
References SHARD_FOR_KEY.
Referenced by count_matches_sharded(), fill_row_ids_sharded(), and hash_join_idx_sharded().
RUNTIME_EXPORT int32_t* get_hash_slot_sharded_opt | ( | int32_t * | buff, |
const int64_t | key, | ||
const int64_t | min_key, | ||
const uint32_t | entry_count_per_shard, | ||
const uint32_t | shard, | ||
const uint32_t | num_shards, | ||
const uint32_t | device_count | ||
) |
Definition at line 140 of file JoinHashImpl.h.
Referenced by fill_hash_join_buff_sharded().
RUNTIME_EXPORT int64_t* get_matching_group_value_perfect_hash | ( | int64_t * | groups_buffer, |
const uint32_t | h, | ||
const int64_t * | key, | ||
const uint32_t | key_qw_count, | ||
const uint32_t | row_size_quad | ||
) |
RUNTIME_EXPORT int64_t* get_matching_group_value_perfect_hash_keyless | ( | int64_t * | groups_buffer, |
const uint32_t | hashed_index, | ||
const uint32_t | row_size_quad | ||
) |
For a particular hashed index (only used with multi-column perfect hash group by) it returns the row-wise offset of the group in the output buffer. Since it is intended for keyless hash use, it assumes there is no group columns prepending the output buffer.
Definition at line 2075 of file RuntimeFunctions.cpp.
RUNTIME_EXPORT uint32_t key_hash | ( | const int64_t * | key, |
const uint32_t | key_qw_count, | ||
const uint32_t | key_byte_width | ||
) |
Definition at line 21 of file GroupByRuntime.cpp.
References MurmurHash3().
Referenced by get_group_value(), get_group_value_columnar(), anonymous_namespace{ResultSetReduction.cpp}::get_group_value_columnar_reduction(), get_group_value_columnar_slot(), get_group_value_columnar_slot_with_watchdog(), get_group_value_columnar_with_watchdog(), result_set::get_group_value_reduction(), and get_group_value_with_watchdog().
RUNTIME_EXPORT void linear_probabilistic_count | ( | uint8_t * | bitmap, |
const uint32_t | bitmap_bytes, | ||
const uint8_t * | key_bytes, | ||
const uint32_t | key_len | ||
) |
Definition at line 1293 of file cuda_mapd_rt.cu.
References MurmurHash3().