6#include <benchmark/benchmark.h>
20 using benchmark::Fixture::SetUp;
21 void SetUp(benchmark::State &state)
final
24 std::uniform_real_distribution<>
dis;
25 fNumbers.resize(
static_cast<std::size_t
>(state.range(0)));
26 for (std::size_t i = 0; i <
fNumbers.size(); i++) {
34 for (
auto _ : state) {
35 for (
double number : fNumbers) {
50 using benchmark::Fixture::SetUp;
51 void SetUp(benchmark::State &state)
final
54 std::uniform_real_distribution<>
dis;
55 fNumbers.resize(2 *
static_cast<std::size_t
>(state.range(0)));
56 for (std::size_t i = 0; i <
fNumbers.size(); i++) {
64 for (
auto _ : state) {
65 for (std::size_t i = 0; i < fNumbers.size(); i += 2) {
66 engine.Fill(fNumbers[i], fNumbers[i + 1]);
80 using benchmark::Fixture::SetUp;
81 void SetUp(benchmark::State &state)
final
84 std::uniform_real_distribution<>
dis;
85 fNumbers.resize(
static_cast<std::size_t
>(state.range(0)));
86 for (std::size_t i = 0; i <
fNumbers.size(); i++) {
94 for (
auto _ : state) {
95 for (
double number : fNumbers) {
104 for (
auto _ : state) {
105 for (
double number : fNumbers) {
120 using benchmark::Fixture::SetUp;
121 void SetUp(benchmark::State &state)
final
124 std::uniform_real_distribution<>
dis;
125 fNumbers.resize(2 *
static_cast<std::size_t
>(state.range(0)));
126 for (std::size_t i = 0; i <
fNumbers.size(); i++) {
134 for (
auto _ : state) {
135 for (std::size_t i = 0; i < fNumbers.size(); i += 2) {
136 engine.Fill(fNumbers[i], fNumbers[i + 1]);
144 for (
auto _ : state) {
145 for (std::size_t i = 0; i < fNumbers.size(); i += 2) {
160 using benchmark::Fixture::SetUp;
161 void SetUp(benchmark::State &state)
final
164 std::uniform_real_distribution<>
dis;
165 fNumbers.resize(
static_cast<std::size_t
>(state.range(0)));
166 for (std::size_t i = 0; i <
fNumbers.size(); i++) {
174 for (
auto _ : state) {
175 for (
double number : fNumbers) {
184 for (
auto _ : state) {
185 for (
double number : fNumbers) {
200 using benchmark::Fixture::SetUp;
201 void SetUp(benchmark::State &state)
final
204 std::uniform_real_distribution<>
dis;
205 fNumbers.resize(2 *
static_cast<std::size_t
>(state.range(0)));
206 for (std::size_t i = 0; i <
fNumbers.size(); i++) {
214 for (
auto _ : state) {
215 for (std::size_t i = 0; i < fNumbers.size(); i += 2) {
216 engine.Fill(fNumbers[i], fNumbers[i + 1]);
224 for (
auto _ : state) {
225 for (std::size_t i = 0; i < fNumbers.size(); i += 2) {
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
A histogram data structure to bin data along multiple dimensions.
A regular axis with equidistant bins in the interval .
BENCHMARK_DEFINE_F(RHistEngine_int_Regular1, Fill)(benchmark
BENCHMARK_REGISTER_F(RHistEngine_int_Regular1, Fill) -> Range(0, 32768)
ROOT::Experimental::RRegularAxis axis
void SetUp(benchmark::State &state) final
std::vector< double > fNumbers
ROOT::Experimental::RHistEngine< ROOT::Experimental::RBinWithError > engine
ROOT::Experimental::RHistEngine< ROOT::Experimental::RBinWithError > engine
std::vector< double > fNumbers
void SetUp(benchmark::State &state) final
ROOT::Experimental::RRegularAxis axis
std::vector< double > fNumbers
ROOT::Experimental::RRegularAxis axis
ROOT::Experimental::RHistEngine< float > engine
void SetUp(benchmark::State &state) final
std::vector< double > fNumbers
ROOT::Experimental::RHistEngine< float > engine
void SetUp(benchmark::State &state) final
ROOT::Experimental::RRegularAxis axis
ROOT::Experimental::RHistEngine< int > engine
void SetUp(benchmark::State &state) final
ROOT::Experimental::RRegularAxis axis
std::vector< double > fNumbers
ROOT::Experimental::RRegularAxis axis
ROOT::Experimental::RHistEngine< int > engine
void SetUp(benchmark::State &state) final
std::vector< double > fNumbers
A weight for filling histograms.