cpp-stat-bench 0.24.0
Benchmark library with statistics for C++.
Loading...
Searching...
No Matches
benchmark_macros.h File Reference

Definition of macros for benchmarks. More...

+ Include dependency graph for benchmark_macros.h:

Go to the source code of this file.

Macros

#define STAT_BENCH_CASE(GROUP_NAME, CASE_NAME)
 Macro to define a case.
 
#define STAT_BENCH_CASE_F(FIXTURE_NAME, GROUP_NAME, CASE_NAME)
 Macro to define a case using a fixture.
 
#define STAT_BENCH_GROUP(GROUP_NAME)
 Macro to define and configure a group.
 
#define STAT_BENCH_MAIN   STAT_BENCH_IMPL_DEFAULT_MAIN
 Macro of default main function.
 
#define STAT_BENCH_MEASURE()
 Macro to measure a function.
 
#define STAT_BENCH_MEASURE_INDEXED( THREAD_INDEX_VAR, SAMPLE_INDEX_VAR, ITERATION_INDEX_VAR)
 Macro to measure a function.
 

Detailed Description

Definition of macros for benchmarks.

Definition in file benchmark_macros.h.

Macro Definition Documentation

◆ STAT_BENCH_CASE

#define STAT_BENCH_CASE ( GROUP_NAME,
CASE_NAME )
Value:
STAT_BENCH_IMPL_UNIQUE_NAME(stat_bench_case_register_), GROUP_NAME, \
CASE_NAME)
#define STAT_BENCH_IMPL_CASE_IMPL( CLASS_NAME, REGISTER_NAME, GROUP_NAME, CASE_NAME)
Macro to define a case.
Definition case_impl.h:67
#define STAT_BENCH_IMPL_UNIQUE_NAME(PREFIX)
Macro to generate a unique name.
Definition unique_name.h:49

Macro to define a case.

Parameters
[in]GROUP_NAMEGroup name.
[in]CASE_NAMECase name.
Examples
simple_benchmark.cpp.

Definition at line 55 of file benchmark_macros.h.

◆ STAT_BENCH_CASE_F

#define STAT_BENCH_CASE_F ( FIXTURE_NAME,
GROUP_NAME,
CASE_NAME )
Value:
STAT_BENCH_IMPL_UNIQUE_NAME(StatBenchCase), \
STAT_BENCH_IMPL_UNIQUE_NAME(stat_bench_case_register_), FIXTURE_NAME, \
GROUP_NAME, CASE_NAME)
#define STAT_BENCH_IMPL_CASE_WITH_FIXTURE_IMPL( CLASS_NAME, REGISTER_NAME, FIXTURE_NAME, GROUP_NAME, CASE_NAME)
Macro to define a case using a fixture.
Definition case_impl.h:37

Macro to define a case using a fixture.

Parameters
[in]FIXTURE_NAMEFixture name.
[in]GROUP_NAMEGroup name.
[in]CASE_NAMECase name.
Examples
configure_plotting.cpp, custom_output_with_stat.cpp, custom_output_without_stat.cpp, and parameterized_benchmark.cpp.

Definition at line 67 of file benchmark_macros.h.

◆ STAT_BENCH_GROUP

#define STAT_BENCH_GROUP ( GROUP_NAME)
Value:
GROUP_NAME, STAT_BENCH_IMPL_UNIQUE_NAME(stat_bench_group_register_))
#define STAT_BENCH_IMPL_GROUP_IMPL(GROUP_NAME, REGISTER_NAME)
Macro to define and configure a group.
Definition group_impl.h:31

Macro to define and configure a group.

Parameters
[in]GROUP_NAMEGroup name.

This macro returns stat_bench::bench_impl::BenchmarkGroupRegister object. You can use this macro to configure a group like following:

STAT_BENCH_GROUP("group_name")
.add_parameter_to_time_line_plot("parameter_name")
.add_parameter_to_time_line_plot_log("another_parameter_name");
#define STAT_BENCH_GROUP(GROUP_NAME)
Macro to define and configure a group.
Examples
configure_plotting.cpp.

Definition at line 45 of file benchmark_macros.h.

◆ STAT_BENCH_MAIN

#define STAT_BENCH_MAIN   STAT_BENCH_IMPL_DEFAULT_MAIN

Macro of default main function.

Definition at line 95 of file benchmark_macros.h.

◆ STAT_BENCH_MEASURE

#define STAT_BENCH_MEASURE ( )
Value:
/*THREAD_INDEX_VAR*/, /*SAMPLE_INDEX_VAR*/, /*ITERATION_INDEX_VAR*/)
#define STAT_BENCH_MEASURE_INDEXED( THREAD_INDEX_VAR, SAMPLE_INDEX_VAR, ITERATION_INDEX_VAR)
Macro to measure a function.

Macro to measure a function.

Examples
configure_plotting.cpp, custom_output_without_stat.cpp, parameterized_benchmark.cpp, and simple_benchmark.cpp.

Definition at line 88 of file benchmark_macros.h.

◆ STAT_BENCH_MEASURE_INDEXED

#define STAT_BENCH_MEASURE_INDEXED ( THREAD_INDEX_VAR,
SAMPLE_INDEX_VAR,
ITERATION_INDEX_VAR )
Value:
THREAD_INDEX_VAR, SAMPLE_INDEX_VAR, ITERATION_INDEX_VAR)
#define STAT_BENCH_IMPL_MEASURE_IMPL( THREAD_INDEX_VAR, SAMPLE_INDEX_VAR, ITERATION_INDEX_VAR)
Macro to measure a function.

Macro to measure a function.

Parameters
[in]THREAD_INDEX_VARVariable name of the index of the thread.
[in]SAMPLE_INDEX_VARVariable name of the index of the sample.
[in]ITERATION_INDEX_VARVariable name of the index of the iteration.
Examples
custom_output_with_stat.cpp.

Definition at line 80 of file benchmark_macros.h.