All Classes Namespaces Files Functions Variables Typedefs Enumerator Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
MeterPU::Meter< Type > Class Template Reference

The software multi-meters. More...

#include <MeterPU.h>

Collaboration diagram for MeterPU::Meter< Type >:
Collaboration graph
[legend]

Public Member Functions

 Meter ()
 
void start ()
 start a measurement More...
 
void stop ()
 stop a measurement More...
 
void calc ()
 calculate measurement value More...
 
Meter_Traits< Type >
::ResultType const & 
get_value () const
 Get calculated metric value, require calc() to be called already. More...
 
void show_meter_reading ()
 Write measurement value on standard output with its unit. More...
 

Private Attributes

Meter_Traits< Type >
::Environment_Init_Type 
environment_init_object
 Native library initializer. More...
 
Meter_Traits< Type >
::Measurement_Controller 
measurement_controller_object
 Measurement controller. More...
 
Meter_Traits< Type >::ResultType meter_reading
 The variable used to store the calculated. More...
 

Detailed Description

template<class Type>
class MeterPU::Meter< Type >

The software multi-meters.

The only class the user program should use. When equipped with different template parameter, it can measure different metrics on code regions. So far supported metrics are

Constructor & Destructor Documentation

template<class Type>
MeterPU::Meter< Type >::Meter ( )
inline

Member Function Documentation

template<class Type>
void MeterPU::Meter< Type >::calc ( )
inline

calculate measurement value

template<class Type>
Meter_Traits<Type>::ResultType const& MeterPU::Meter< Type >::get_value ( ) const
inline

Get calculated metric value, require calc() to be called already.

template<class Type>
void MeterPU::Meter< Type >::show_meter_reading ( )
inline

Write measurement value on standard output with its unit.

template<class Type>
void MeterPU::Meter< Type >::start ( )
inline

start a measurement

template<class Type>
void MeterPU::Meter< Type >::stop ( )
inline

stop a measurement

Member Data Documentation

template<class Type>
Meter_Traits<Type>::Environment_Init_Type MeterPU::Meter< Type >::environment_init_object
private

Native library initializer.

For GPU, initialize NVML library.

template<class Type>
Meter_Traits<Type>::Measurement_Controller MeterPU::Meter< Type >::measurement_controller_object
private

Measurement controller.

The object that do the measurement, Meter class pass control signal such as start and stop to it.

template<class Type>
Meter_Traits<Type>::ResultType MeterPU::Meter< Type >::meter_reading
private

The variable used to store the calculated.


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