Impala
Impalaistheopensource,nativeanalyticdatabaseforApacheHadoop.
|
#include <iostream>
#include <stdlib.h>
#include <stdio.h>
#include <vector>
#include <boost/functional/hash.hpp>
#include "codegen/llvm-codegen.h"
#include "experiments/data-provider.h"
#include "runtime/mem-tracker.h"
#include "runtime/raw-value.h"
#include "runtime/string-value.h"
#include "util/benchmark.h"
#include "util/cpu-info.h"
#include "util/hash-util.h"
#include "common/names.h"
Go to the source code of this file.
Classes | |
struct | TestData< Decimal > |
Typedefs | |
typedef uint32_t(* | CodegenHashFn )(int rows, char *data, int32_t *results) |
Functions | |
void | TestFnvIntHash (int batch, void *d) |
void | TestCrcIntHash (int batch, void *d) |
void | TestBoostIntHash (int batch, void *d) |
void | TestCodegenIntHash (int batch, void *d) |
void | TestFnvMixedHash (int batch, void *d) |
void | TestCrcMixedHash (int batch, void *d) |
void | TestCodegenMixedHash (int batch, void *d) |
void | TestBoostMixedHash (int batch, void *d) |
int | NumCollisions (TestData *data, int num_buckets) |
Function * | CodegenCrcHash (LlvmCodeGen *codegen, bool mixed) |
int | main (int argc, char **argv) |
typedef uint32_t(* CodegenHashFn)(int rows, char *data, int32_t *results) |
Definition at line 74 of file hash-benchmark.cc.
Function* CodegenCrcHash | ( | LlvmCodeGen * | codegen, |
bool | mixed | ||
) |
Definition at line 273 of file hash-benchmark.cc.
References impala::LlvmCodeGen::FnPrototype::AddArgument(), impala::LlvmCodeGen::context(), impala::LlvmCodeGen::FinalizeFunction(), impala::HashUtil::FNV_SEED, impala::LlvmCodeGen::GetHashFunction(), impala::LlvmCodeGen::GetIntConstant(), impala::LlvmCodeGen::GetPtrType(), impala::LlvmCodeGen::GetType(), impala::name, offset, impala::LlvmCodeGen::ptr_type(), impala::TYPE_INT, impala::TYPE_STRING, and impala::LlvmCodeGen::void_type().
Referenced by main().
int main | ( | int | argc, |
char ** | argv | ||
) |
Definition at line 352 of file hash-benchmark.cc.
References impala::Benchmark::AddBenchmark(), CodegenCrcHash(), TestData< Decimal >::data, impala::Status::GetDetail(), impala::Benchmark::GetMachineInfo(), impala::CpuInfo::Init(), impala::LlvmCodeGen::InitializeLlvm(), TestData< Decimal >::jitted_fn, impala::LlvmCodeGen::LoadImpalaIR(), impala::Benchmark::Measure(), DataProvider::NextBatch(), TestData< Decimal >::num_cols, TestData< Decimal >::num_rows, impala::obj_pool(), impala::Status::ok(), DataProvider::Reset(), TestData< Decimal >::results, TestBoostIntHash(), TestBoostMixedHash(), TestCodegenIntHash(), TestCodegenMixedHash(), TestCrcIntHash(), TestCrcMixedHash(), TestFnvIntHash(), TestFnvMixedHash(), and tracker.
int NumCollisions | ( | TestData * | data, |
int | num_buckets | ||
) |
Definition at line 238 of file hash-benchmark.cc.
References impala::hash, and TestData< Decimal >::results.
void TestBoostIntHash | ( | int | batch, |
void * | d | ||
) |
Definition at line 118 of file hash-benchmark.cc.
References TestData< Decimal >::data, impala::HashUtil::FNV_SEED, impala::hash_value(), TestData< Decimal >::num_cols, TestData< Decimal >::num_rows, and TestData< Decimal >::results.
Referenced by main().
void TestBoostMixedHash | ( | int | batch, |
void * | d | ||
) |
Definition at line 208 of file hash-benchmark.cc.
References TestData< Decimal >::data, impala::HashUtil::FNV_SEED, impala::hash_value(), impala::StringValue::len, TestData< Decimal >::num_rows, impala::StringValue::ptr, and TestData< Decimal >::results.
Referenced by main().
void TestCodegenIntHash | ( | int | batch, |
void * | d | ||
) |
Definition at line 136 of file hash-benchmark.cc.
References TestData< Decimal >::data, TestData< Decimal >::jitted_fn, TestData< Decimal >::num_rows, and TestData< Decimal >::results.
Referenced by main().
void TestCodegenMixedHash | ( | int | batch, |
void * | d | ||
) |
Definition at line 198 of file hash-benchmark.cc.
References TestData< Decimal >::data, TestData< Decimal >::jitted_fn, TestData< Decimal >::num_rows, and TestData< Decimal >::results.
Referenced by main().
void TestCrcIntHash | ( | int | batch, |
void * | d | ||
) |
Definition at line 101 of file hash-benchmark.cc.
References impala::HashUtil::CrcHash(), TestData< Decimal >::data, impala::HashUtil::FNV_SEED, impala::hash, TestData< Decimal >::num_cols, TestData< Decimal >::num_rows, and TestData< Decimal >::results.
Referenced by main().
void TestCrcMixedHash | ( | int | batch, |
void * | d | ||
) |
Definition at line 172 of file hash-benchmark.cc.
References impala::HashUtil::CrcHash(), TestData< Decimal >::data, impala::HashUtil::FNV_SEED, impala::hash, impala::StringValue::len, TestData< Decimal >::num_rows, impala::StringValue::ptr, and TestData< Decimal >::results.
Referenced by main().
void TestFnvIntHash | ( | int | batch, |
void * | d | ||
) |
Definition at line 84 of file hash-benchmark.cc.
References TestData< Decimal >::data, impala::HashUtil::FNV_SEED, impala::HashUtil::FnvHash64to32(), impala::hash, TestData< Decimal >::num_cols, TestData< Decimal >::num_rows, and TestData< Decimal >::results.
Referenced by main().
void TestFnvMixedHash | ( | int | batch, |
void * | d | ||
) |
Definition at line 146 of file hash-benchmark.cc.
References TestData< Decimal >::data, impala::HashUtil::FNV_SEED, impala::HashUtil::FnvHash64to32(), impala::hash, impala::StringValue::len, TestData< Decimal >::num_rows, impala::StringValue::ptr, and TestData< Decimal >::results.
Referenced by main().