Monero
Public Member Functions | Private Member Functions | Private Attributes | List of all members
test_runner< T > Class Template Reference

#include <performance_tests.h>

Collaboration diagram for test_runner< T >:
Collaboration graph
[legend]

Public Member Functions

 test_runner (const Params &params)
 
bool run ()
 
int elapsed_time () const
 
size_t get_size () const
 
int time_per_call (int scale=1) const
 
uint64_t get_min () const
 
uint64_t get_max () const
 
double get_mean () const
 
uint64_t get_median () const
 
double get_stddev () const
 
double get_non_parametric_skew () const
 
std::vector< uint64_tget_quantiles (size_t n) const
 
bool is_same_distribution (size_t npoints, double mean, double stddev) const
 

Private Member Functions

uint64_t warm_up ()
 

Private Attributes

volatile uint64_t m_warm_up
 ! This field is intended for preclude compiler optimizations More...
 
int m_elapsed
 
Params m_params
 
std::vector< tools::PerformanceTimerm_per_call_timers
 
std::unique_ptr< Stats< tools::PerformanceTimer, uint64_t > > m_stats
 

Constructor & Destructor Documentation

◆ test_runner()

template<typename T>
test_runner< T >::test_runner ( const Params params)
inline

Member Function Documentation

◆ elapsed_time()

template<typename T>
int test_runner< T >::elapsed_time ( ) const
inline

◆ get_max()

template<typename T>
uint64_t test_runner< T >::get_max ( ) const
inline

◆ get_mean()

template<typename T>
double test_runner< T >::get_mean ( ) const
inline

◆ get_median()

template<typename T>
uint64_t test_runner< T >::get_median ( ) const
inline

◆ get_min()

template<typename T>
uint64_t test_runner< T >::get_min ( ) const
inline

◆ get_non_parametric_skew()

template<typename T>
double test_runner< T >::get_non_parametric_skew ( ) const
inline

◆ get_quantiles()

template<typename T>
std::vector<uint64_t> test_runner< T >::get_quantiles ( size_t  n) const
inline

◆ get_size()

template<typename T>
size_t test_runner< T >::get_size ( ) const
inline

◆ get_stddev()

template<typename T>
double test_runner< T >::get_stddev ( ) const
inline

◆ is_same_distribution()

template<typename T>
bool test_runner< T >::is_same_distribution ( size_t  npoints,
double  mean,
double  stddev 
) const
inline

◆ run()

template<typename T>
bool test_runner< T >::run ( )
inline

◆ time_per_call()

template<typename T>
int test_runner< T >::time_per_call ( int  scale = 1) const
inline

◆ warm_up()

template<typename T>
uint64_t test_runner< T >::warm_up ( )
inlineprivate

Warm up processor core, enabling turbo boost, etc.

Member Data Documentation

◆ m_elapsed

template<typename T>
int test_runner< T >::m_elapsed
private

◆ m_params

template<typename T>
Params test_runner< T >::m_params
private

◆ m_per_call_timers

template<typename T>
std::vector<tools::PerformanceTimer> test_runner< T >::m_per_call_timers
private

◆ m_stats

template<typename T>
std::unique_ptr<Stats<tools::PerformanceTimer, uint64_t> > test_runner< T >::m_stats
private

◆ m_warm_up

template<typename T>
volatile uint64_t test_runner< T >::m_warm_up
private

! This field is intended for preclude compiler optimizations


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