Chebyshev
Unit testing for scientific software
Loading...
Searching...
No Matches
chebyshev::benchmark::benchmark_settings Class Reference

Global settings of the benchmark module, used in benchmark_context. More...

#include <benchmark.h>

Public Attributes

std::string moduleName
 Name of the module currently being benchmarked.
 
unsigned int defaultIterations = CHEBYSHEV_BENCHMARK_ITER
 Default number of iterations.
 
unsigned int defaultRuns = CHEBYSHEV_BENCHMARK_RUNS
 Default number of runs.
 
std::vector< std::string > outputFiles {}
 The files to write all benchmark results to.
 
std::map< std::string, boolpickedBenchmarks {}
 Target benchmarks marked for execution (all benchmarks will be executed if empty)
 
std::vector< std::string > benchmarkOutputFiles {}
 The files to write benchmark results to (if empty, all results are output to a generic file).
 
std::vector< std::string > benchmarkColumns
 Default columns to print for benchmarks.
 
bool multithreading = true
 Whether to use multithreading for the execution of benchmarks (defaults to true).
 

Detailed Description

Global settings of the benchmark module, used in benchmark_context.

Member Data Documentation

◆ benchmarkColumns

std::vector<std::string> chebyshev::benchmark::benchmark_settings::benchmarkColumns
Initial value:
= {
"name", "averageRuntime", "stdevRuntime", "runsPerSecond"
}

Default columns to print for benchmarks.

◆ multithreading

bool chebyshev::benchmark::benchmark_settings::multithreading = true

Whether to use multithreading for the execution of benchmarks (defaults to true).

If your code is not thread-safe (for example, if it accesses shared memory inside the tested functions), you may need to disable multithreading.


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