gem5
[DEVELOP-FOR-23.0]
|
Implementation of a vector of stats. More...
#include <statistics.hh>
Public Types | |
typedef Stor | Storage |
typedef Stor::Params | Params |
typedef ScalarProxy< Derived > | Proxy |
Proxy type. More... | |
![]() | |
typedef VectorInfoProxy< Derived > | Info |
![]() | |
typedef VectorInfoProxy< Derived > | Info |
Public Member Functions | |
void | value (VCounter &vec) const |
void | result (VResult &vec) const |
Copy the values to a local vector and return a reference to it. More... | |
Result | total () const |
Return a total of all entries in this vector. More... | |
size_type | size () const |
bool | zero () const |
bool | check () const |
VectorBase (Group *parent, const char *name, const units::Base *unit, const char *desc) | |
~VectorBase () | |
Derived & | init (size_type size) |
Set this vector to have the given size. More... | |
Proxy | operator[] (off_type index) |
Return a reference (ScalarProxy) to the stat at the given index. More... | |
![]() | |
DataWrapVec (Group *parent=nullptr, const char *name=nullptr, const units::Base *unit=units::Unspecified::get(), const char *desc=nullptr) | |
Derived & | subname (off_type index, const std::string &name) |
Set the subfield name for the given index, and marks this stat to print at the end of simulation. More... | |
Derived & | subdesc (off_type index, const std::string &desc) |
Set the subfield description for the given index and marks this stat to print at the end of simulation. More... | |
void | prepare () |
void | reset () |
![]() | |
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... | |
![]() | |
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 | |
Storage * | data (off_type index) |
Retrieve the storage. More... | |
const Storage * | data (off_type index) const |
Retrieve a const pointer to the storage. More... | |
void | doInit (size_type s) |
![]() | |
Derived & | self () |
Info * | info () |
![]() | |
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... | |
Protected Attributes | |
std::vector< Storage * > | storage |
The storage of this stat. More... | |
Friends | |
class | ScalarProxy< Derived > |
class | DataWrapVec< Derived, VectorInfoProxy > |
Implementation of a vector of stats.
The type of stat is determined by the Storage class.
Definition at line 921 of file statistics.hh.
typedef Stor::Params gem5::statistics::VectorBase< Derived, Stor >::Params |
Definition at line 925 of file statistics.hh.
typedef ScalarProxy<Derived> gem5::statistics::VectorBase< Derived, Stor >::Proxy |
Proxy type.
Definition at line 928 of file statistics.hh.
typedef Stor gem5::statistics::VectorBase< Derived, Stor >::Storage |
Definition at line 924 of file statistics.hh.
|
inline |
Definition at line 1019 of file statistics.hh.
|
inline |
Definition at line 1026 of file statistics.hh.
|
inline |
Definition at line 1013 of file statistics.hh.
Referenced by gem5::statistics::VectorBase< Vector, StatStor >::doInit().
|
inlineprotected |
Retrieve the storage.
index | The vector index to access. |
Definition at line 942 of file statistics.hh.
Referenced by gem5::statistics::VectorBase< Vector, StatStor >::result(), gem5::statistics::VectorBase< Vector, StatStor >::total(), gem5::statistics::VectorBase< Vector, StatStor >::value(), and gem5::statistics::VectorBase< Vector, StatStor >::zero().
|
inlineprotected |
Retrieve a const pointer to the storage.
index | The vector index to access. |
Definition at line 949 of file statistics.hh.
|
inlineprotected |
Definition at line 952 of file statistics.hh.
Referenced by gem5::statistics::VectorBase< Vector, StatStor >::init().
|
inline |
Set this vector to have the given size.
size | The new size. |
Definition at line 1039 of file statistics.hh.
Referenced by gem5::ruby::CacheMemory::CacheMemoryStats::CacheMemoryStats(), gem5::FALRU::CacheTracking::CacheTracking(), gem5::BaseCPU::CommitCPUStats::CommitCPUStats(), gem5::o3::Commit::CommitStats::CommitStats(), gem5::ComputeUnit::ComputeUnitStats::ComputeUnitStats(), gem5::CopyEngine::CopyEngineStats::CopyEngineStats(), gem5::ExecStage::ExecStageStats::ExecStageStats(), gem5::o3::IEW::IEWStats::ExecutedInstStats::ExecutedInstStats(), gem5::ruby::HTMSequencer::HTMSequencer(), gem5::o3::IEW::IEWStats::IEWStats(), gem5::o3::InstructionQueue::IQStats::IQStats(), gem5::ruby::garnet::GarnetNetwork::regStats(), gem5::ScheduleStage::ScheduleStageStats::ScheduleStageStats(), gem5::ScoreboardCheckStage::ScoreboardCheckStageStats::ScoreboardCheckStageStats(), gem5::Shader::ShaderStats::ShaderStats(), gem5::ArmISA::TableWalker::TableWalkerStats::TableWalkerStats(), and gem5::branch_prediction::TAGEBase::TAGEBaseStats::TAGEBaseStats().
|
inline |
Return a reference (ScalarProxy) to the stat at the given index.
index | The vector index to access. |
Definition at line 1052 of file statistics.hh.
|
inline |
Copy the values to a local vector and return a reference to it.
Definition at line 978 of file statistics.hh.
|
inline |
Definition at line 1001 of file statistics.hh.
Referenced by gem5::statistics::VectorBase< Vector, StatStor >::check(), gem5::statistics::VectorBase< Vector, StatStor >::operator[](), gem5::statistics::VectorBase< Vector, StatStor >::result(), gem5::statistics::VectorBase< Vector, StatStor >::total(), gem5::statistics::VectorBase< Vector, StatStor >::value(), and gem5::statistics::VectorBase< Vector, StatStor >::zero().
|
inline |
Return a total of all entries in this vector.
Definition at line 990 of file statistics.hh.
Referenced by gem5::PowerState::getWeights(), and gem5::statistics::VectorBase< Vector, StatStor >::total().
|
inline |
Definition at line 966 of file statistics.hh.
Referenced by gem5::PowerState::getWeights(), and gem5::memory::qos::MemCtrl::logResponse().
|
inline |
Definition at line 1004 of file statistics.hh.
|
friend |
Definition at line 930 of file statistics.hh.
|
friend |
Definition at line 929 of file statistics.hh.
|
protected |
The storage of this stat.
Definition at line 934 of file statistics.hh.
Referenced by gem5::statistics::VectorBase< Vector, StatStor >::data(), gem5::statistics::VectorBase< Vector, StatStor >::doInit(), gem5::statistics::VectorBase< Vector, StatStor >::size(), and gem5::statistics::VectorBase< Vector, StatStor >::~VectorBase().