JayBeams  0.1
Another project to have fun coding.
Variables
jb::testing::defaults Namespace Reference

Define the default values for a microbenchmark config. More...

Variables

int warmup_iterations = JB_DEFAULTS_microbenchmark_warmup_iterations
 
int iterations = JB_DEFAULTS_microbenchmark_iterations
 
int size = JB_DEFAULTS_microbenchmark_size
 
bool verbose = JB_DEFAULTS_microbenchmark_verbose
 
bool reconfigure_thread = JB_DEFAULTS_microbenchmark_reconfigure_thread
 

Detailed Description

Define the default values for a microbenchmark config.

This is an experiment in how to write highly-configurable classes for JayBeams. The intention is that any configuration parameter can be set using these rules:

  1. if the configuration is set in the command-line, use the command-line value, otherwise
  2. if the configuration is set in the configuration file, use the value in the configuration file, otherwise
  3. if the program was compiled with a special setting for the default value, use that setting, otherwise
  4. use whatever default was chosen by the developer.

The configuration files themselves are found using a series of rules (TBD).

What I would want is that each component can define its own config class, and the main program choses which ones become command-line arguments.

Variable Documentation

◆ iterations

int jb::testing::defaults::iterations = JB_DEFAULTS_microbenchmark_iterations

Definition at line 50 of file microbenchmark_config.cpp.

◆ reconfigure_thread

bool jb::testing::defaults::reconfigure_thread = JB_DEFAULTS_microbenchmark_reconfigure_thread

Definition at line 53 of file microbenchmark_config.cpp.

◆ size

int jb::testing::defaults::size = JB_DEFAULTS_microbenchmark_size

Definition at line 51 of file microbenchmark_config.cpp.

Referenced by jb::config_recurse::add_options(), BOOST_AUTO_TEST_CASE(), jb::testing::check_collection_close_enough(), jb::itch5::check_offset(), jb::itch5::check_offset< true >(), jb::fftw::traits< double >::create_backward_plan_many(), jb::fftw::traits< float >::create_backward_plan_many(), jb::fftw::traits< long double >::create_backward_plan_many(), jb::fftw::traits< double >::create_forward_plan_many(), jb::fftw::traits< float >::create_forward_plan_many(), jb::fftw::traits< long double >::create_forward_plan_many(), jb::fftw::traits< double >::create_plan_many(), jb::fftw::traits< float >::create_plan_many(), jb::fftw::traits< long double >::create_plan_many(), jb::opencl::generic_reduce< reducer, input_type_t, output_type_t >::execute(), jb::itch5::hash_value(), main(), jb::testing::extrapolate_periodic< sample_t >::operator()(), jb::itch5::decoder< validate, std::uint8_t >::r(), jb::itch5::decoder< validate, std::uint16_t >::r(), jb::itch5::decoder< validate, std::uint32_t >::r(), jb::itch5::decoder< validate, timestamp >::r(), jb::itch5::decoder< validate, std::uint64_t >::r(), jb::itch5::decoder< validate, short_string_field< wsize, F > >::r(), jb::testing::microbenchmark< Fixture >::run_iteration(), jb::itch5::testing::system_event(), jb::itch5::encoder< validate, std::uint8_t >::w(), jb::itch5::encoder< validate, std::uint16_t >::w(), jb::itch5::encoder< validate, std::uint32_t >::w(), jb::itch5::encoder< validate, std::uint64_t >::w(), and jb::itch5::encoder< validate, timestamp >::w().

◆ verbose

bool jb::testing::defaults::verbose = JB_DEFAULTS_microbenchmark_verbose

Definition at line 52 of file microbenchmark_config.cpp.

◆ warmup_iterations

int jb::testing::defaults::warmup_iterations = JB_DEFAULTS_microbenchmark_warmup_iterations

Definition at line 49 of file microbenchmark_config.cpp.