|
ZeroErr
|
#include "zeroerr/internal/config.h"#include <chrono>#include <cstdint>#include <string>#include <vector>

Go to the source code of this file.
Classes | |
| struct | zeroerr::PerfCountSet< T > |
| PerfCountSet is a set of performance counters. More... | |
| struct | zeroerr::PerformanceCounter |
| PerformanceCounter is a class to measure the performance of a function. More... | |
| struct | zeroerr::BenchResult |
| BenchResult is a result of running the benchmark. More... | |
| struct | zeroerr::Benchmark |
| Benchmark create a core object for configuration of a benchmark. This class is a driver to run multiple times of a benchmark. Each time of a run will generate a row of data. Report will print the data in console. More... | |
Namespaces | |
| namespace | zeroerr |
| namespace | zeroerr::detail |
Macros | |
| #define | ZEROERR_CREATE_BENCHMARK_FUNC(function, name, ...) |
| #define | BENCHMARK(name, ...) ZEROERR_CREATE_BENCHMARK_FUNC(ZEROERR_NAMEGEN(_zeroerr_benchmark), name, __VA_ARGS__) |
Typedefs | |
| using | zeroerr::Clock = std::conditional< std::chrono::high_resolution_clock::is_steady, std::chrono::high_resolution_clock, std::chrono::steady_clock >::type |
Functions | |
| BenchState * | zeroerr::createBenchState (Benchmark &benchmark) |
| void | zeroerr::destroyBenchState (BenchState *state) |
| size_t | zeroerr::getNumIter (BenchState *state) |
| void | zeroerr::runIteration (BenchState *state) |
| void | zeroerr::moveResult (BenchState *state, std::string name) |
| template<typename T > | |
| void | zeroerr::detail::doNotOptimizeAway (const T &val) |
| template<typename T > | |
| void | zeroerr::detail::doNotOptimizeAway (T &val) |
| template<typename Arg > | |
| void | zeroerr::doNotOptimizeAway (Arg &&arg) |
| Makes sure none of the given arguments are optimized away by the compiler. | |
| #define BENCHMARK | ( | name, | |
| ... | |||
| ) | ZEROERR_CREATE_BENCHMARK_FUNC(ZEROERR_NAMEGEN(_zeroerr_benchmark), name, __VA_ARGS__) |
| #define ZEROERR_CREATE_BENCHMARK_FUNC | ( | function, | |
| name, | |||
| ... | |||
| ) |