6#include <benchmark/benchmark.h>
19 using benchmark::Fixture::SetUp;
20 void SetUp(benchmark::State &state)
final
23 std::uniform_real_distribution<>
dis;
25 for (std::size_t i = 0; i <
fNumbers.size(); i++) {
33 for (
auto _ : state) {
34 for (
double number : fNumbers) {
49 using benchmark::Fixture::SetUp;
50 void SetUp(benchmark::State &state)
final
53 std::uniform_real_distribution<>
dis;
55 for (std::size_t i = 0; i <
fNumbers.size(); i++) {
63 for (
auto _ : state) {
64 for (std::size_t i = 0; i < fNumbers.size(); i += 2) {
65 engine.Fill(fNumbers[i], fNumbers[i + 1]);
79 using benchmark::Fixture::SetUp;
80 void SetUp(benchmark::State &state)
final
83 std::uniform_real_distribution<>
dis;
85 for (std::size_t i = 0; i <
fNumbers.size(); i++) {
93 for (
auto _ : state) {
94 for (
double number : fNumbers) {
103 for (
auto _ : state) {
104 for (
double number : fNumbers) {
119 using benchmark::Fixture::SetUp;
120 void SetUp(benchmark::State &state)
final
123 std::uniform_real_distribution<>
dis;
124 fNumbers.resize(2 * state.range(0));
125 for (std::size_t i = 0; i <
fNumbers.size(); i++) {
133 for (
auto _ : state) {
134 for (std::size_t i = 0; i < fNumbers.size(); i += 2) {
135 engine.Fill(fNumbers[i], fNumbers[i + 1]);
143 for (
auto _ : state) {
144 for (std::size_t i = 0; i < fNumbers.size(); i += 2) {
159 using benchmark::Fixture::SetUp;
160 void SetUp(benchmark::State &state)
final
163 std::uniform_real_distribution<>
dis;
165 for (std::size_t i = 0; i <
fNumbers.size(); i++) {
173 for (
auto _ : state) {
174 for (
double number : fNumbers) {
183 for (
auto _ : state) {
184 for (
double number : fNumbers) {
199 using benchmark::Fixture::SetUp;
200 void SetUp(benchmark::State &state)
final
203 std::uniform_real_distribution<>
dis;
204 fNumbers.resize(2 * state.range(0));
205 for (std::size_t i = 0; i <
fNumbers.size(); i++) {
213 for (
auto _ : state) {
214 for (std::size_t i = 0; i < fNumbers.size(); i += 2) {
215 engine.Fill(fNumbers[i], fNumbers[i + 1]);
223 for (
auto _ : state) {
224 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.
Int_t Fill(Double_t x) override
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.