gem5 [DEVELOP-FOR-25.0]
Loading...
Searching...
No Matches
gem5::BaseTags::BaseTagStats Struct Reference

TODO: It would be good if these stats were acquired after warmup. More...

#include <base.hh>

Inheritance diagram for gem5::BaseTags::BaseTagStats:
gem5::statistics::Group

Public Member Functions

 BaseTagStats (BaseTags &tags)
 
void regStats () override
 Callback to set stat parameters.
 
void preDumpStats () override
 Callback before stats are dumped.
 
- Public Member Functions inherited from gem5::statistics::Group
 Group (Group *parent, const char *name=nullptr)
 Construct a new statistics group.
 
virtual ~Group ()
 
virtual void resetStats ()
 Callback to reset stats.
 
void addStat (statistics::Info *info)
 Register a stat with this group.
 
const std::map< std::string, Group * > & getStatGroups () const
 Get all child groups associated with this object.
 
const std::vector< Info * > & getStats () const
 Get all stats associated with this object.
 
void addStatGroup (const char *name, Group *block)
 Add a stat block as a child of this block.
 
const InforesolveStat (std::string name) const
 Resolve a stat by its name within this group.
 
void mergeStatGroup (Group *block)
 Merge the contents (stats & children) of a block to this block.
 
 Group ()=delete
 
 Group (const Group &)=delete
 
Groupoperator= (const Group &)=delete
 

Public Attributes

BaseTagstags
 
statistics::Average tagsInUse
 Per tick average of the number of tags that hold valid data.
 
statistics::Scalar totalRefs
 The total number of references to a block before it is replaced.
 
statistics::Scalar sampledRefs
 The number of reference counts sampled.
 
statistics::Formula avgRefs
 Average number of references to a block before is was replaced.
 
statistics::Scalar warmupTick
 The tick that the warmup percentage was hit.
 
statistics::AverageVector occupancies
 Average occupancy of each requestor using the cache.
 
statistics::Formula avgOccs
 Average occ % of each requestor using the cache.
 
statistics::Vector occupanciesTaskId
 Occupancy of each context/cpu using the cache.
 
statistics::Vector2d ageTaskId
 Occupancy of each context/cpu using the cache.
 
statistics::Formula ratioOccsTaskId
 Occ ratio of each context/cpu using the cache.
 
statistics::Scalar tagAccesses
 Number of tags consulted over all accesses.
 
statistics::Scalar dataAccesses
 Number of data blocks consulted over all accesses.
 

Detailed Description

TODO: It would be good if these stats were acquired after warmup.

Definition at line 111 of file base.hh.

Constructor & Destructor Documentation

◆ BaseTagStats()

Member Function Documentation

◆ preDumpStats()

void gem5::BaseTags::BaseTagStats::preDumpStats ( )
overridevirtual

Callback before stats are dumped.

This can be overridden by objects that need to perform calculations in addition to the capabiltiies implemented in the stat framework.

Reimplemented from gem5::statistics::Group.

Definition at line 305 of file base.cc.

References gem5::statistics::Group::preDumpStats(), and tags.

◆ regStats()

void gem5::BaseTags::BaseTagStats::regStats ( )
overridevirtual

Callback to set stat parameters.

This callback is typically used for complex stats (e.g., distributions) that need parameters in addition to a name and a description. Stat names and descriptions should typically be set from the constructor usingo from the constructor using the ADD_STAT macro.

Reimplemented from gem5::statistics::Group.

Definition at line 264 of file base.cc.

References ageTaskId, avgOccs, avgRefs, gem5::statistics::constant(), gem5::ArmISA::i, gem5::statistics::nonan, gem5::statistics::nozero, gem5::context_switch_task_id::NumTaskId, occupancies, occupanciesTaskId, ratioOccsTaskId, gem5::statistics::Group::regStats(), sampledRefs, gem5::BaseTags::system, tags, gem5::statistics::total, and totalRefs.

Member Data Documentation

◆ ageTaskId

statistics::Vector2d gem5::BaseTags::BaseTagStats::ageTaskId

Occupancy of each context/cpu using the cache.

Definition at line 152 of file base.hh.

Referenced by BaseTagStats(), and regStats().

◆ avgOccs

statistics::Formula gem5::BaseTags::BaseTagStats::avgOccs

Average occ % of each requestor using the cache.

Definition at line 146 of file base.hh.

Referenced by BaseTagStats(), and regStats().

◆ avgRefs

statistics::Formula gem5::BaseTags::BaseTagStats::avgRefs

Average number of references to a block before is was replaced.

Todo
This should change to an average stat once we have them.

Definition at line 137 of file base.hh.

Referenced by BaseTagStats(), and regStats().

◆ dataAccesses

statistics::Scalar gem5::BaseTags::BaseTagStats::dataAccesses

Number of data blocks consulted over all accesses.

Definition at line 160 of file base.hh.

Referenced by BaseTagStats().

◆ occupancies

statistics::AverageVector gem5::BaseTags::BaseTagStats::occupancies

Average occupancy of each requestor using the cache.

Definition at line 143 of file base.hh.

Referenced by BaseTagStats(), and regStats().

◆ occupanciesTaskId

statistics::Vector gem5::BaseTags::BaseTagStats::occupanciesTaskId

Occupancy of each context/cpu using the cache.

Definition at line 149 of file base.hh.

Referenced by BaseTagStats(), and regStats().

◆ ratioOccsTaskId

statistics::Formula gem5::BaseTags::BaseTagStats::ratioOccsTaskId

Occ ratio of each context/cpu using the cache.

Definition at line 155 of file base.hh.

Referenced by BaseTagStats(), and regStats().

◆ sampledRefs

statistics::Scalar gem5::BaseTags::BaseTagStats::sampledRefs

The number of reference counts sampled.

This is different from replacements because we sample all the valid blocks when the simulator exits.

Definition at line 131 of file base.hh.

Referenced by BaseTagStats(), and regStats().

◆ tagAccesses

statistics::Scalar gem5::BaseTags::BaseTagStats::tagAccesses

Number of tags consulted over all accesses.

Definition at line 158 of file base.hh.

Referenced by BaseTagStats().

◆ tags

BaseTags& gem5::BaseTags::BaseTagStats::tags

Definition at line 118 of file base.hh.

Referenced by BaseTagStats(), preDumpStats(), and regStats().

◆ tagsInUse

statistics::Average gem5::BaseTags::BaseTagStats::tagsInUse

Per tick average of the number of tags that hold valid data.

Definition at line 121 of file base.hh.

Referenced by BaseTagStats().

◆ totalRefs

statistics::Scalar gem5::BaseTags::BaseTagStats::totalRefs

The total number of references to a block before it is replaced.

Definition at line 124 of file base.hh.

Referenced by BaseTagStats(), and regStats().

◆ warmupTick

statistics::Scalar gem5::BaseTags::BaseTagStats::warmupTick

The tick that the warmup percentage was hit.

0 on failure.

Definition at line 140 of file base.hh.

Referenced by BaseTagStats().


The documentation for this struct was generated from the following files:

Generated on Mon May 26 2025 09:19:19 for gem5 by doxygen 1.13.2