Bitcoin Core 31.0.0
P2P Digital Currency
Loading...
Searching...
No Matches
ankerl::nanobench::Result Class Reference

#include <nanobench.h>

Collaboration diagram for ankerl::nanobench::Result:
[legend]

Public Types

enum class  Measure : size_t {
  elapsed , iterations , pagefaults , cpucycles ,
  contextswitches , instructions , branchinstructions , branchmisses ,
  _size
}

Public Member Functions

 Result (Config benchmarkConfig)
 ~Result ()
Resultoperator= (Result const &other)
Resultoperator= (Result &&other) noexcept(ANKERL_NANOBENCH(NOEXCEPT_STRING_MOVE))
 Result (Result const &other)
 Result (Result &&other) noexcept
void add (Clock::duration totalElapsed, uint64_t iters, detail::PerformanceCounters const &pc)
 ANKERL_NANOBENCH (NODISCARD) Config const &config() const noexcept
 ANKERL_NANOBENCH (NODISCARD) double median(Measure m) const
 ANKERL_NANOBENCH (NODISCARD) double medianAbsolutePercentError(Measure m) const
 ANKERL_NANOBENCH (NODISCARD) double average(Measure m) const
 ANKERL_NANOBENCH (NODISCARD) double sum(Measure m) const noexcept
 ANKERL_NANOBENCH (NODISCARD) double sumProduct(Measure m1
 ANKERL_NANOBENCH (NODISCARD) double minimum(Measure m) const noexcept
 ANKERL_NANOBENCH (NODISCARD) double maximum(Measure m) const noexcept
ANKERL_NANOBENCH(NODISCARD) std ANKERL_NANOBENCH(NODISCARD) std ANKERL_NANOBENCH (NODISCARD) bool has(Measure m) const noexcept
 ANKERL_NANOBENCH (NODISCARD) double get(size_t idx
 ANKERL_NANOBENCH (NODISCARD) bool empty() const noexcept
 ANKERL_NANOBENCH (NODISCARD) size_t size() const noexcept

Static Public Member Functions

static Measure fromString (std::string const &str)

Public Attributes

Measure m2 const noexcept
Measureconst

Private Attributes

Config mConfig {}
std::vector< std::vector< double > > mNameToMeasurements {}

Detailed Description

Definition at line 419 of file nanobench.h.

Member Enumeration Documentation

◆ Measure

enum class ankerl::nanobench::Result::Measure : size_t
strong
Enumerator
elapsed 
iterations 
pagefaults 
cpucycles 
contextswitches 
instructions 
branchinstructions 
branchmisses 
_size 

Definition at line 421 of file nanobench.h.

Constructor & Destructor Documentation

◆ Result() [1/3]

ankerl::nanobench::Result::Result ( Config benchmarkConfig)
explicit
Here is the caller graph for this function:

◆ ~Result()

ankerl::nanobench::Result::~Result ( )

◆ Result() [2/3]

ankerl::nanobench::Result::Result ( Result const & other)
Here is the call graph for this function:

◆ Result() [3/3]

ankerl::nanobench::Result::Result ( Result && other)
noexcept
Here is the call graph for this function:

Member Function Documentation

◆ add()

void ankerl::nanobench::Result::add ( Clock::duration totalElapsed,
uint64_t iters,
detail::PerformanceCounters const & pc )

◆ ANKERL_NANOBENCH() [1/12]

ankerl::nanobench::Result::ANKERL_NANOBENCH ( NODISCARD ) const
noexcept
Here is the call graph for this function:

◆ ANKERL_NANOBENCH() [2/12]

ANKERL_NANOBENCH(NODISCARD) std ANKERL_NANOBENCH(NODISCARD) std ankerl::nanobench::Result::ANKERL_NANOBENCH ( NODISCARD ) const
noexcept
Here is the call graph for this function:

◆ ANKERL_NANOBENCH() [3/12]

ankerl::nanobench::Result::ANKERL_NANOBENCH ( NODISCARD ) const &
noexcept
Here is the caller graph for this function:

◆ ANKERL_NANOBENCH() [4/12]

ankerl::nanobench::Result::ANKERL_NANOBENCH ( NODISCARD ) const
Here is the call graph for this function:

◆ ANKERL_NANOBENCH() [5/12]

ankerl::nanobench::Result::ANKERL_NANOBENCH ( NODISCARD )
Here is the call graph for this function:

◆ ANKERL_NANOBENCH() [6/12]

ankerl::nanobench::Result::ANKERL_NANOBENCH ( NODISCARD ) const
noexcept
Here is the call graph for this function:

◆ ANKERL_NANOBENCH() [7/12]

ankerl::nanobench::Result::ANKERL_NANOBENCH ( NODISCARD ) const
Here is the call graph for this function:

◆ ANKERL_NANOBENCH() [8/12]

ankerl::nanobench::Result::ANKERL_NANOBENCH ( NODISCARD ) const
Here is the call graph for this function:

◆ ANKERL_NANOBENCH() [9/12]

ankerl::nanobench::Result::ANKERL_NANOBENCH ( NODISCARD ) const
noexcept
Here is the call graph for this function:

◆ ANKERL_NANOBENCH() [10/12]

ankerl::nanobench::Result::ANKERL_NANOBENCH ( NODISCARD ) const
noexcept
Here is the call graph for this function:

◆ ANKERL_NANOBENCH() [11/12]

ankerl::nanobench::Result::ANKERL_NANOBENCH ( NODISCARD )
Here is the call graph for this function:

◆ ANKERL_NANOBENCH() [12/12]

ankerl::nanobench::Result::ANKERL_NANOBENCH ( NODISCARD ) const
noexcept
Here is the call graph for this function:

◆ fromString()

Measure ankerl::nanobench::Result::fromString ( std::string const & str)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator=() [1/2]

Result & ankerl::nanobench::Result::operator= ( Result && other)
noexcept
Here is the call graph for this function:

◆ operator=() [2/2]

Result & ankerl::nanobench::Result::operator= ( Result const & other)
Here is the call graph for this function:

Member Data Documentation

◆ const

Measure m ankerl::nanobench::Result::const

Definition at line 458 of file nanobench.h.

◆ mConfig

Config ankerl::nanobench::Result::mConfig {}
private

Definition at line 466 of file nanobench.h.

◆ mNameToMeasurements

std::vector<std::vector<double> > ankerl::nanobench::Result::mNameToMeasurements {}
private

Definition at line 467 of file nanobench.h.

◆ noexcept

Measure m2 const ankerl::nanobench::Result::noexcept

Definition at line 451 of file nanobench.h.


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