18#include <benchmark/benchmark.h>
37const static size_t maxrows = 100;
39static std::default_random_engine e(1234567890);
40static std::normal_distribution<float> G;
44 auto static rowWriter = builder.
persist<float, float,
float>({
"x",
"y",
"z"});
46 for (
auto i = 0u;
i < nrows; ++
i) {
47 rowWriter(0, G(e), G(e), G(e));
54static void BM_DirectCalculation(benchmark::State& state)
59 benchmark::DoNotOptimize(
tt);
62static void BM_GandivaExpression(benchmark::State& state)
67 benchmark::DoNotOptimize(
tt);
#define DECLARE_SOA_DYNAMIC_COLUMN(_Name_, _Getter_,...)
#define DECLARE_SOA_COLUMN(_Name_, _Getter_, _Type_)
BENCHMARK(BM_DirectCalculation) -> Arg(maxrows)
auto persist(std::array< char const *, sizeof...(ARGS)+1 > const &columnNames)
std::shared_ptr< arrow::Table > finalize()
GLdouble GLdouble GLdouble z
Defining PrimaryVertex explicitly as messageable.
FIXME: do not use data model tables.