gem5  v21.1.0.2
Public Member Functions | Public Attributes | List of all members
gem5::BaseCache::CacheCmdStats Struct Reference

#include <base.hh>

Inheritance diagram for gem5::BaseCache::CacheCmdStats:
gem5::statistics::Group

Public Member Functions

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

Public Attributes

const BaseCachecache
 
statistics::Vector hits
 Number of hits per thread for each type of command. More...
 
statistics::Vector misses
 Number of misses per thread for each type of command. More...
 
statistics::Vector missLatency
 Total number of cycles per thread/command spent waiting for a miss. More...
 
statistics::Formula accesses
 The number of accesses per command and thread. More...
 
statistics::Formula missRate
 The miss rate per command and thread. More...
 
statistics::Formula avgMissLatency
 The average miss latency per command and thread. More...
 
statistics::Vector mshrHits
 Number of misses that hit in the MSHRs per command and thread. More...
 
statistics::Vector mshrMisses
 Number of misses that miss in the MSHRs, per command and thread. More...
 
statistics::Vector mshrUncacheable
 Number of misses that miss in the MSHRs, per command and thread. More...
 
statistics::Vector mshrMissLatency
 Total cycle latency of each MSHR miss, per command and thread. More...
 
statistics::Vector mshrUncacheableLatency
 Total cycle latency of each MSHR miss, per command and thread. More...
 
statistics::Formula mshrMissRate
 The miss rate in the MSHRs pre command and thread. More...
 
statistics::Formula avgMshrMissLatency
 The average latency of an MSHR miss, per command and thread. More...
 
statistics::Formula avgMshrUncacheableLatency
 The average latency of an MSHR miss, per command and thread. More...
 

Detailed Description

Definition at line 988 of file base.hh.

Constructor & Destructor Documentation

◆ CacheCmdStats()

gem5::BaseCache::CacheCmdStats::CacheCmdStats ( BaseCache c,
const std::string &  name 
)

Definition at line 1949 of file base.cc.

Member Function Documentation

◆ regStatsFromParent()

void gem5::BaseCache::CacheCmdStats::regStatsFromParent ( )

Callback to register stats from parent CacheStats::regStats().

We can't use the normal flow since there is is no guaranteed order and CacheStats::regStats() needs to rely on these stats being initialised.

Definition at line 1987 of file base.cc.

References gem5::System::getRequestorName(), gem5::ArmISA::i, gem5::System::maxRequestors(), gem5::statistics::nonan, gem5::statistics::nozero, gem5::statistics::Group::regStats(), gem5::BaseCache::system, and gem5::statistics::total.

Member Data Documentation

◆ accesses

statistics::Formula gem5::BaseCache::CacheCmdStats::accesses

The number of accesses per command and thread.

Definition at line 1014 of file base.hh.

◆ avgMissLatency

statistics::Formula gem5::BaseCache::CacheCmdStats::avgMissLatency

The average miss latency per command and thread.

Definition at line 1018 of file base.hh.

◆ avgMshrMissLatency

statistics::Formula gem5::BaseCache::CacheCmdStats::avgMshrMissLatency

The average latency of an MSHR miss, per command and thread.

Definition at line 1032 of file base.hh.

◆ avgMshrUncacheableLatency

statistics::Formula gem5::BaseCache::CacheCmdStats::avgMshrUncacheableLatency

The average latency of an MSHR miss, per command and thread.

Definition at line 1034 of file base.hh.

◆ cache

const BaseCache& gem5::BaseCache::CacheCmdStats::cache

Definition at line 1000 of file base.hh.

◆ hits

statistics::Vector gem5::BaseCache::CacheCmdStats::hits

Number of hits per thread for each type of command.

See also
Packet::Command

Definition at line 1004 of file base.hh.

Referenced by gem5::BaseCache::incHitCount().

◆ misses

statistics::Vector gem5::BaseCache::CacheCmdStats::misses

Number of misses per thread for each type of command.

See also
Packet::Command

Definition at line 1007 of file base.hh.

Referenced by gem5::BaseCache::incMissCount().

◆ missLatency

statistics::Vector gem5::BaseCache::CacheCmdStats::missLatency

Total number of cycles per thread/command spent waiting for a miss.

Used to calculate the average miss latency.

Definition at line 1012 of file base.hh.

Referenced by gem5::NoncoherentCache::serviceMSHRTargets(), and gem5::Cache::serviceMSHRTargets().

◆ missRate

statistics::Formula gem5::BaseCache::CacheCmdStats::missRate

The miss rate per command and thread.

Definition at line 1016 of file base.hh.

◆ mshrHits

statistics::Vector gem5::BaseCache::CacheCmdStats::mshrHits

Number of misses that hit in the MSHRs per command and thread.

Definition at line 1020 of file base.hh.

Referenced by gem5::BaseCache::handleTimingReqMiss().

◆ mshrMisses

statistics::Vector gem5::BaseCache::CacheCmdStats::mshrMisses

Number of misses that miss in the MSHRs, per command and thread.

Definition at line 1022 of file base.hh.

Referenced by gem5::BaseCache::getNextQueueEntry(), and gem5::BaseCache::handleTimingReqMiss().

◆ mshrMissLatency

statistics::Vector gem5::BaseCache::CacheCmdStats::mshrMissLatency

Total cycle latency of each MSHR miss, per command and thread.

Definition at line 1026 of file base.hh.

Referenced by gem5::BaseCache::recvTimingResp().

◆ mshrMissRate

statistics::Formula gem5::BaseCache::CacheCmdStats::mshrMissRate

The miss rate in the MSHRs pre command and thread.

Definition at line 1030 of file base.hh.

◆ mshrUncacheable

statistics::Vector gem5::BaseCache::CacheCmdStats::mshrUncacheable

Number of misses that miss in the MSHRs, per command and thread.

Definition at line 1024 of file base.hh.

Referenced by gem5::Cache::handleTimingReqMiss().

◆ mshrUncacheableLatency

statistics::Vector gem5::BaseCache::CacheCmdStats::mshrUncacheableLatency

Total cycle latency of each MSHR miss, per command and thread.

Definition at line 1028 of file base.hh.

Referenced by gem5::BaseCache::recvTimingResp().


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

Generated on Tue Sep 21 2021 12:27:19 for gem5 by doxygen 1.8.17