Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
benchmark::internal::BenchmarkRunner Class Reference

#include <benchmark_runner.h>

Classes

struct  IterationResults
 

Public Member Functions

 BenchmarkRunner (const benchmark::internal::BenchmarkInstance &b_, BenchmarkReporter::PerFamilyRunReports *reports_for_family)
 
void DoOneRepetition ()
 
int GetNumRepeats () const
 
BenchmarkReporter::PerFamilyRunReportsGetReportsForFamily () const
 
RunResults && GetResults ()
 
bool HasRepeatsRemaining () const
 

Private Member Functions

IterationResults DoNIterations ()
 
IterationCount PredictNumItersNeeded (const IterationResults &i) const
 
bool ShouldReportIterationResults (const IterationResults &i) const
 

Private Attributes

const benchmark::internal::BenchmarkInstanceb
 
const bool has_explicit_iteration_count
 
IterationCount iters
 
const double min_time
 
int num_repetitions_done = 0
 
PerfCountersMeasurement perf_counters_measurement
 
PerfCountersMeasurement *const perf_counters_measurement_ptr
 
std::vector< std::threadpool
 
const int repeats
 
BenchmarkReporter::PerFamilyRunReportsreports_for_family
 
RunResults run_results
 

Detailed Description

Definition at line 46 of file benchmark_runner.h.

Constructor & Destructor Documentation

◆ BenchmarkRunner()

benchmark::internal::BenchmarkRunner::BenchmarkRunner ( const benchmark::internal::BenchmarkInstance b_,
BenchmarkReporter::PerFamilyRunReports reports_for_family 
)

Definition at line 144 of file benchmark_runner.cc.

Member Function Documentation

◆ DoNIterations()

BenchmarkRunner::IterationResults benchmark::internal::BenchmarkRunner::DoNIterations ( )
private

Definition at line 177 of file benchmark_runner.cc.

◆ DoOneRepetition()

void benchmark::internal::BenchmarkRunner::DoOneRepetition ( )

Definition at line 269 of file benchmark_runner.cc.

◆ GetNumRepeats()

int benchmark::internal::BenchmarkRunner::GetNumRepeats ( ) const
inline

Definition at line 51 of file benchmark_runner.h.

◆ GetReportsForFamily()

BenchmarkReporter::PerFamilyRunReports* benchmark::internal::BenchmarkRunner::GetReportsForFamily ( ) const
inline

Definition at line 61 of file benchmark_runner.h.

◆ GetResults()

RunResults && benchmark::internal::BenchmarkRunner::GetResults ( )

Definition at line 337 of file benchmark_runner.cc.

◆ HasRepeatsRemaining()

bool benchmark::internal::BenchmarkRunner::HasRepeatsRemaining ( ) const
inline

Definition at line 53 of file benchmark_runner.h.

◆ PredictNumItersNeeded()

IterationCount benchmark::internal::BenchmarkRunner::PredictNumItersNeeded ( const IterationResults i) const
private

Definition at line 231 of file benchmark_runner.cc.

◆ ShouldReportIterationResults()

bool benchmark::internal::BenchmarkRunner::ShouldReportIterationResults ( const IterationResults i) const
private

Definition at line 255 of file benchmark_runner.cc.

Member Data Documentation

◆ b

const benchmark::internal::BenchmarkInstance& benchmark::internal::BenchmarkRunner::b
private

Definition at line 68 of file benchmark_runner.h.

◆ has_explicit_iteration_count

const bool benchmark::internal::BenchmarkRunner::has_explicit_iteration_count
private

Definition at line 73 of file benchmark_runner.h.

◆ iters

IterationCount benchmark::internal::BenchmarkRunner::iters
private

Definition at line 79 of file benchmark_runner.h.

◆ min_time

const double benchmark::internal::BenchmarkRunner::min_time
private

Definition at line 71 of file benchmark_runner.h.

◆ num_repetitions_done

int benchmark::internal::BenchmarkRunner::num_repetitions_done = 0
private

Definition at line 75 of file benchmark_runner.h.

◆ perf_counters_measurement

PerfCountersMeasurement benchmark::internal::BenchmarkRunner::perf_counters_measurement
private

Definition at line 83 of file benchmark_runner.h.

◆ perf_counters_measurement_ptr

PerfCountersMeasurement* const benchmark::internal::BenchmarkRunner::perf_counters_measurement_ptr
private

Definition at line 84 of file benchmark_runner.h.

◆ pool

std::vector<std::thread> benchmark::internal::BenchmarkRunner::pool
private

Definition at line 77 of file benchmark_runner.h.

◆ repeats

const int benchmark::internal::BenchmarkRunner::repeats
private

Definition at line 72 of file benchmark_runner.h.

◆ reports_for_family

BenchmarkReporter::PerFamilyRunReports* benchmark::internal::BenchmarkRunner::reports_for_family
private

Definition at line 69 of file benchmark_runner.h.

◆ run_results

RunResults benchmark::internal::BenchmarkRunner::run_results
private

Definition at line 66 of file benchmark_runner.h.


The documentation for this class was generated from the following files:


grpc
Author(s):
autogenerated on Fri May 16 2025 03:02:58