gem5
v20.1.0.0
|
Implementation of a scalar stat. More...
#include <statistics.hh>
Public Types | |
typedef Stor | Storage |
typedef Stor::Params | Params |
Public Types inherited from Stats::DataWrap< Derived, ScalarInfoProxy > | |
typedef ScalarInfoProxy< Derived > | Info |
Public Member Functions | |
Counter | value () const |
Return the current value of this stat as its base type. More... | |
ScalarBase (Group *parent=nullptr, const char *name=nullptr, const char *desc=nullptr) | |
void | operator++ () |
Increment the stat by 1. More... | |
void | operator-- () |
Decrement the stat by 1. More... | |
void | operator++ (int) |
Increment the stat by 1. More... | |
void | operator-- (int) |
Decrement the stat by 1. More... | |
template<typename U > | |
void | operator= (const U &v) |
Set the data value to the given value. More... | |
template<typename U > | |
void | operator+= (const U &v) |
Increment the stat by the given value. More... | |
template<typename U > | |
void | operator-= (const U &v) |
Decrement the stat by the given value. More... | |
size_type | size () const |
Return the number of elements, always 1 for a scalar. More... | |
Counter | value () |
Result | result () |
Result | total () |
bool | zero () |
void | reset () |
void | prepare () |
Public Member Functions inherited from Stats::DataWrap< Derived, ScalarInfoProxy > | |
const Info * | info () const |
DataWrap ()=delete | |
DataWrap (const DataWrap &)=delete | |
DataWrap (Group *parent, const char *name, const char *desc) | |
DataWrap & | operator= (const DataWrap &)=delete |
Derived & | name (const std::string &name) |
Set the name and marks this stat to print at the end of simulation. More... | |
const std::string & | name () const |
Derived & | setSeparator (const std::string &_sep) |
Set the character(s) used between the name and vector number on vectors, dist, etc. More... | |
const std::string & | setSeparator () const |
Derived & | desc (const std::string &_desc) |
Set the description and marks this stat to print at the end of simulation. More... | |
Derived & | precision (int _precision) |
Set the precision and marks this stat to print at the end of simulation. More... | |
Derived & | flags (Flags _flags) |
Set the flags and marks this stat to print at the end of simulation. More... | |
Derived & | prereq (const Stat &prereq) |
Set the prerequisite stat and marks this stat to print at the end of simulation. More... | |
Public Member Functions inherited from Stats::InfoAccess | |
InfoAccess () | |
void | reset () |
Reset the stat to the default state. More... | |
bool | zero () const |
bool | check () const |
Check that this stat has been set up properly and is ready for use. More... | |
Protected Member Functions | |
char storage[sizeof(Storage)] | __attribute__ ((aligned(8))) |
The storage of this stat. More... | |
Storage * | data () |
Retrieve the storage. More... | |
const Storage * | data () const |
Retrieve a const pointer to the storage. More... | |
void | doInit () |
Protected Member Functions inherited from Stats::DataWrap< Derived, ScalarInfoProxy > | |
Derived & | self () |
Info * | info () |
Protected Member Functions inherited from Stats::InfoAccess | |
void | setInfo (Group *parent, Info *info) |
Set up an info class for this statistic. More... | |
void | setParams (const StorageParams *params) |
Save Storage class parameters if any. More... | |
void | setInit () |
Save Storage class parameters if any. More... | |
Info * | info () |
Grab the information class for this statistic. More... | |
const Info * | info () const |
Grab the information class for this statistic. More... | |
Implementation of a scalar stat.
The type of stat is determined by the Storage template.
Definition at line 652 of file statistics.hh.
typedef Stor::Params Stats::ScalarBase< Derived, Stor >::Params |
Definition at line 656 of file statistics.hh.
typedef Stor Stats::ScalarBase< Derived, Stor >::Storage |
Definition at line 655 of file statistics.hh.
|
inline |
Definition at line 701 of file statistics.hh.
|
protected |
The storage of this stat.
|
inlineprotected |
Retrieve the storage.
index | The vector index to access. |
Definition at line 669 of file statistics.hh.
Referenced by Stats::ScalarBase< Scalar, StatStor >::operator++(), Stats::ScalarBase< Scalar, StatStor >::operator+=(), Stats::ScalarBase< Scalar, StatStor >::operator--(), Stats::ScalarBase< Scalar, StatStor >::operator-=(), Stats::ScalarBase< Scalar, StatStor >::operator=(), Stats::ScalarBase< Scalar, StatStor >::prepare(), Stats::ScalarBase< Scalar, StatStor >::reset(), Stats::ScalarBase< Scalar, StatStor >::result(), and Stats::ScalarBase< Scalar, StatStor >::value().
|
inlineprotected |
Retrieve a const pointer to the storage.
for the given index.
index | The vector index to access. |
Definition at line 681 of file statistics.hh.
|
inlineprotected |
Definition at line 687 of file statistics.hh.
Referenced by Stats::ScalarBase< Scalar, StatStor >::ScalarBase().
|
inline |
Increment the stat by 1.
This calls the associated storage object inc function.
Definition at line 714 of file statistics.hh.
|
inline |
Increment the stat by 1.
Definition at line 722 of file statistics.hh.
|
inline |
Increment the stat by the given value.
This calls the associated storage object inc function.
v | The value to add. |
Definition at line 740 of file statistics.hh.
|
inline |
Decrement the stat by 1.
This calls the associated storage object dec function.
Definition at line 719 of file statistics.hh.
|
inline |
Decrement the stat by 1.
Definition at line 724 of file statistics.hh.
|
inline |
Decrement the stat by the given value.
This calls the associated storage object dec function.
v | The value to substract. |
Definition at line 748 of file statistics.hh.
|
inline |
Set the data value to the given value.
This calls the associated storage object set function.
v | The new value. |
Definition at line 732 of file statistics.hh.
|
inline |
Definition at line 765 of file statistics.hh.
|
inline |
Definition at line 764 of file statistics.hh.
|
inline |
Definition at line 758 of file statistics.hh.
Referenced by Stats::ScalarBase< Scalar, StatStor >::total(), and Stats::ScalarBase< Scalar, StatStor >::zero().
|
inline |
Return the number of elements, always 1 for a scalar.
Definition at line 754 of file statistics.hh.
|
inline |
Definition at line 760 of file statistics.hh.
|
inline |
Definition at line 756 of file statistics.hh.
|
inline |
Return the current value of this stat as its base type.
Definition at line 698 of file statistics.hh.
Referenced by TraceCPU::ElasticDataGen::addDepsOnParent(), TraceCPU::ElasticDataGen::addToSortedReadyList(), ElasticTrace::assignRobDep(), Wavefront::exec(), UFSHostDevice::finalUTP(), BaseTags::insertBlock(), ElasticTrace::recordExecTick(), UFSHostDevice::requestHandler(), TraceCPU::totalOps(), BaseTrafficGen::update(), TraceCPU::updateNumOps(), X86ISA::GpuTLB::updatePageFootprint(), and ElasticTrace::updateRegDep().
|
inline |
Definition at line 762 of file statistics.hh.