Bitcoin ABC 0.26.3
P2P Digital Currency
|
#include <chrono>
#include <cstring>
#include <iosfwd>
#include <string>
#include <vector>
Go to the source code of this file.
Classes | |
struct | ankerl::nanobench::detail::PerfCountSet< T > |
struct | ankerl::nanobench::Config |
class | ankerl::nanobench::Result |
class | ankerl::nanobench::Rng |
An extremely fast random generator. More... | |
class | ankerl::nanobench::Bench |
Main entry point to nanobench's benchmarking facility. More... | |
class | ankerl::nanobench::detail::IterationLogic |
class | ankerl::nanobench::detail::PerformanceCounters |
class | ankerl::nanobench::BigO |
Namespaces | |
namespace | ankerl |
namespace | ankerl::nanobench |
namespace | ankerl::nanobench::templates |
namespace | ankerl::nanobench::detail |
Typedefs | |
using | ankerl::nanobench::Clock = std::conditional< std::chrono::high_resolution_clock::is_steady, std::chrono::high_resolution_clock, std::chrono::steady_clock >::type |
Functions | |
void | ankerl::nanobench::render (char const *mustacheTemplate, Bench const &bench, std::ostream &out) |
Renders output from a mustache-like template and benchmark results. | |
void | ankerl::nanobench::render (std::string const &mustacheTemplate, Bench const &bench, std::ostream &out) |
void | ankerl::nanobench::render (char const *mustacheTemplate, std::vector< Result > const &results, std::ostream &out) |
Same as render(char const* mustacheTemplate, Bench const& bench, std::ostream& out), but for when you only have results available. | |
void | ankerl::nanobench::render (std::string const &mustacheTemplate, std::vector< Result > const &results, std::ostream &out) |
char const * | ankerl::nanobench::templates::csv () noexcept |
CSV data for the benchmark results. | |
char const * | ankerl::nanobench::templates::htmlBoxplot () noexcept |
HTML output that uses plotly to generate an interactive boxplot chart. See the tutorial for an example output. | |
char const * | ankerl::nanobench::templates::pyperf () noexcept |
Output in pyperf compatible JSON format, which can be used for more analyzations. | |
char const * | ankerl::nanobench::templates::json () noexcept |
Template to generate JSON data. | |
template<typename Arg > | |
void | ankerl::nanobench::doNotOptimizeAway (Arg &&arg) |
Makes sure none of the given arguments are optimized away by the compiler. | |
template<typename T > | |
void | ankerl::nanobench::detail::doNotOptimizeAway (T const &val) |
template<typename T > | |
void | ankerl::nanobench::detail::doNotOptimizeAway (T &val) |
PerformanceCounters & | ankerl::nanobench::detail::performanceCounters () |
std::ostream & | ankerl::nanobench::operator<< (std::ostream &os, BigO const &bigO) |
std::ostream & | ankerl::nanobench::operator<< (std::ostream &os, std::vector< ankerl::nanobench::BigO > const &bigOs) |
#define ANKERL_NANOBENCH | ( | x | ) | ANKERL_NANOBENCH_PRIVATE_##x() |
Definition at line 48 of file nanobench.h.
#define ANKERL_NANOBENCH_IS_TRIVIALLY_COPYABLE | ( | ... | ) | std::is_trivially_copyable<__VA_ARGS__>::value |
Definition at line 119 of file nanobench.h.
#define ANKERL_NANOBENCH_LOG | ( | x | ) |
Definition at line 86 of file nanobench.h.
#define ANKERL_NANOBENCH_NO_SANITIZE | ( | ... | ) |
Definition at line 105 of file nanobench.h.
#define ANKERL_NANOBENCH_PRIVATE_CXX | ( | ) | __cplusplus |
Definition at line 50 of file nanobench.h.
Definition at line 52 of file nanobench.h.
Definition at line 53 of file nanobench.h.
Definition at line 54 of file nanobench.h.
Definition at line 51 of file nanobench.h.
#define ANKERL_NANOBENCH_PRIVATE_IGNORE_EFFCPP_POP | ( | ) |
Definition at line 76 of file nanobench.h.
#define ANKERL_NANOBENCH_PRIVATE_IGNORE_EFFCPP_PUSH | ( | ) |
Definition at line 75 of file nanobench.h.
#define ANKERL_NANOBENCH_PRIVATE_IGNORE_PADDED_POP | ( | ) |
Definition at line 68 of file nanobench.h.
#define ANKERL_NANOBENCH_PRIVATE_IGNORE_PADDED_PUSH | ( | ) |
Definition at line 67 of file nanobench.h.
#define ANKERL_NANOBENCH_PRIVATE_NODISCARD | ( | ) |
Definition at line 59 of file nanobench.h.
#define ANKERL_NANOBENCH_PRIVATE_NOINLINE | ( | ) | __attribute__((noinline)) |
Definition at line 111 of file nanobench.h.
#define ANKERL_NANOBENCH_PRIVATE_PERF_COUNTERS | ( | ) | 0 |
Definition at line 91 of file nanobench.h.
#define ANKERL_NANOBENCH_VERSION_MAJOR 4 |
Definition at line 34 of file nanobench.h.
#define ANKERL_NANOBENCH_VERSION_MINOR 3 |
Definition at line 35 of file nanobench.h.
#define ANKERL_NANOBENCH_VERSION_PATCH 6 |
Definition at line 36 of file nanobench.h.