|
gem5
v22.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 gem5::statistics::DataWrap< Derived, ScalarInfoProxy > | |
| typedef ScalarInfoProxy< Derived > | Info |
Public Member Functions | |
| ScalarBase (Group *parent=nullptr, const char *name=nullptr, const units::Base *unit=units::Unspecified::get(), 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 () const |
| Return the current value of this stat as its base type. More... | |
| Result | result () const |
| Result | total () const |
| bool | zero () const |
| void | reset () |
| void | prepare () |
Public Member Functions inherited from gem5::statistics::DataWrap< Derived, ScalarInfoProxy > | |
| const Info * | info () const |
| DataWrap ()=delete | |
| DataWrap (const DataWrap &)=delete | |
| DataWrap (Group *parent, const char *name, const units::Base *unit, 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 & | unit (const units::Base *_unit) |
| Set the unit of the stat. More... | |
| 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 gem5::statistics::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 | |
| GEM5_ALIGNED (8) char storage[sizeof(Storage)] | |
| 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 gem5::statistics::DataWrap< Derived, ScalarInfoProxy > | |
| Derived & | self () |
| Info * | info () |
Protected Member Functions inherited from gem5::statistics::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... | |
| bool | newStyleStats () const |
| Check if the info is new style stats. More... | |
Implementation of a scalar stat.
The type of stat is determined by the Storage template.
Definition at line 520 of file statistics.hh.
| typedef Stor::Params gem5::statistics::ScalarBase< Derived, Stor >::Params |
Definition at line 524 of file statistics.hh.
| typedef Stor gem5::statistics::ScalarBase< Derived, Stor >::Storage |
Definition at line 523 of file statistics.hh.
|
inline |
Definition at line 562 of file statistics.hh.
References gem5::statistics::ScalarBase< Derived, Stor >::doInit().
|
inlineprotected |
Retrieve the storage.
| index | The vector index to access. |
Definition at line 537 of file statistics.hh.
Referenced by gem5::statistics::ScalarBase< Derived, Stor >::operator++(), gem5::statistics::ScalarBase< Derived, Stor >::operator+=(), gem5::statistics::ScalarBase< Derived, Stor >::operator--(), gem5::statistics::ScalarBase< Derived, Stor >::operator-=(), gem5::statistics::ScalarBase< Derived, Stor >::operator=(), gem5::statistics::ScalarBase< Derived, Stor >::prepare(), gem5::statistics::ScalarBase< Derived, Stor >::reset(), gem5::statistics::ScalarBase< Derived, Stor >::result(), and gem5::statistics::ScalarBase< Derived, Stor >::value().
|
inlineprotected |
Retrieve a const pointer to the storage.
for the given index.
| index | The vector index to access. |
Definition at line 549 of file statistics.hh.
|
inlineprotected |
Definition at line 555 of file statistics.hh.
References gem5::statistics::Info::getStorageParams(), gem5::statistics::DataWrap< Derived, ScalarInfoProxy >::info(), and gem5::statistics::InfoAccess::setInit().
Referenced by gem5::statistics::ScalarBase< Derived, Stor >::ScalarBase().
|
protected |
The storage of this stat.
|
inline |
Increment the stat by 1.
This calls the associated storage object inc function.
Definition at line 576 of file statistics.hh.
References gem5::statistics::ScalarBase< Derived, Stor >::data().
|
inline |
Increment the stat by 1.
Definition at line 584 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 602 of file statistics.hh.
References gem5::statistics::ScalarBase< Derived, Stor >::data(), and gem5::VegaISA::v.
|
inline |
Decrement the stat by 1.
This calls the associated storage object dec function.
Definition at line 581 of file statistics.hh.
References gem5::statistics::ScalarBase< Derived, Stor >::data().
|
inline |
Decrement the stat by 1.
Definition at line 586 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 610 of file statistics.hh.
References gem5::statistics::ScalarBase< Derived, Stor >::data(), and gem5::VegaISA::v.
|
inline |
Set the data value to the given value.
This calls the associated storage object set function.
| v | The new value. |
Definition at line 594 of file statistics.hh.
References gem5::statistics::ScalarBase< Derived, Stor >::data(), and gem5::VegaISA::v.
|
inline |
Definition at line 631 of file statistics.hh.
References gem5::statistics::ScalarBase< Derived, Stor >::data(), and gem5::statistics::DataWrap< Derived, ScalarInfoProxy >::info().
|
inline |
Definition at line 630 of file statistics.hh.
References gem5::statistics::ScalarBase< Derived, Stor >::data(), and gem5::statistics::DataWrap< Derived, ScalarInfoProxy >::info().
|
inline |
Definition at line 624 of file statistics.hh.
References gem5::statistics::ScalarBase< Derived, Stor >::data().
Referenced by gem5::statistics::ScalarBase< Derived, Stor >::total(), and gem5::statistics::ScalarBase< Derived, Stor >::zero().
|
inline |
Return the number of elements, always 1 for a scalar.
Definition at line 616 of file statistics.hh.
|
inline |
Definition at line 626 of file statistics.hh.
References gem5::statistics::ScalarBase< Derived, Stor >::result().
|
inline |
Return the current value of this stat as its base type.
Definition at line 622 of file statistics.hh.
References gem5::statistics::ScalarBase< Derived, Stor >::data().
Referenced by gem5::TraceCPU::ElasticDataGen::addDepsOnParent(), gem5::TraceCPU::ElasticDataGen::addToSortedReadyList(), gem5::o3::ElasticTrace::assignRobDep(), gem5::Wavefront::exec(), gem5::BaseTags::insertBlock(), gem5::SectorTags::insertBlock(), gem5::SectorTags::invalidate(), gem5::SectorTags::moveBlock(), gem5::o3::ElasticTrace::recordExecTick(), gem5::TraceCPU::totalOps(), gem5::BaseTrafficGen::update(), gem5::TraceCPU::updateNumOps(), gem5::X86ISA::GpuTLB::updatePageFootprint(), and gem5::o3::ElasticTrace::updateRegDep().
|
inline |
Definition at line 628 of file statistics.hh.
References gem5::statistics::ScalarBase< Derived, Stor >::result().