base-stats: Rename Units namespace as units
As part of recent decisions regarding namespace naming conventions, all namespaces will be changed to snake case. Stats::Units became Stats::units. Change-Id: I9ce855b291db122d952098a090a2984b42152850 Signed-off-by: Daniel R. Carvalho <odanrc@yahoo.com.br> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/45415 Maintainer: Jason Lowe-Power <power.jg@gmail.com> Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Hoa Nguyen <hoanguyen@ucdavis.edu>
This commit is contained in:
committed by
Daniel Carvalho
parent
7592230550
commit
3016478068
@@ -111,30 +111,30 @@ AbstractMemory::setBackingStore(uint8_t* pmem_addr)
|
||||
|
||||
AbstractMemory::MemStats::MemStats(AbstractMemory &_mem)
|
||||
: Stats::Group(&_mem), mem(_mem),
|
||||
ADD_STAT(bytesRead, Stats::Units::Byte::get(),
|
||||
ADD_STAT(bytesRead, Stats::units::Byte::get(),
|
||||
"Number of bytes read from this memory"),
|
||||
ADD_STAT(bytesInstRead, Stats::Units::Byte::get(),
|
||||
ADD_STAT(bytesInstRead, Stats::units::Byte::get(),
|
||||
"Number of instructions bytes read from this memory"),
|
||||
ADD_STAT(bytesWritten, Stats::Units::Byte::get(),
|
||||
ADD_STAT(bytesWritten, Stats::units::Byte::get(),
|
||||
"Number of bytes written to this memory"),
|
||||
ADD_STAT(numReads, Stats::Units::Count::get(),
|
||||
ADD_STAT(numReads, Stats::units::Count::get(),
|
||||
"Number of read requests responded to by this memory"),
|
||||
ADD_STAT(numWrites, Stats::Units::Count::get(),
|
||||
ADD_STAT(numWrites, Stats::units::Count::get(),
|
||||
"Number of write requests responded to by this memory"),
|
||||
ADD_STAT(numOther, Stats::Units::Count::get(),
|
||||
ADD_STAT(numOther, Stats::units::Count::get(),
|
||||
"Number of other requests responded to by this memory"),
|
||||
ADD_STAT(bwRead, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(bwRead, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Total read bandwidth from this memory"),
|
||||
ADD_STAT(bwInstRead,
|
||||
Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Instruction read bandwidth from this memory"),
|
||||
ADD_STAT(bwWrite, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(bwWrite, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Write bandwidth from this memory"),
|
||||
ADD_STAT(bwTotal, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(bwTotal, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Total bandwidth to/from this memory")
|
||||
{
|
||||
}
|
||||
|
||||
112
src/mem/cache/base.cc
vendored
112
src/mem/cache/base.cc
vendored
@@ -1928,36 +1928,36 @@ BaseCache::unserialize(CheckpointIn &cp)
|
||||
BaseCache::CacheCmdStats::CacheCmdStats(BaseCache &c,
|
||||
const std::string &name)
|
||||
: Stats::Group(&c, name.c_str()), cache(c),
|
||||
ADD_STAT(hits, Stats::Units::Count::get(),
|
||||
ADD_STAT(hits, Stats::units::Count::get(),
|
||||
("number of " + name + " hits").c_str()),
|
||||
ADD_STAT(misses, Stats::Units::Count::get(),
|
||||
ADD_STAT(misses, Stats::units::Count::get(),
|
||||
("number of " + name + " misses").c_str()),
|
||||
ADD_STAT(missLatency, Stats::Units::Tick::get(),
|
||||
ADD_STAT(missLatency, Stats::units::Tick::get(),
|
||||
("number of " + name + " miss ticks").c_str()),
|
||||
ADD_STAT(accesses, Stats::Units::Count::get(),
|
||||
ADD_STAT(accesses, Stats::units::Count::get(),
|
||||
("number of " + name + " accesses(hits+misses)").c_str()),
|
||||
ADD_STAT(missRate, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(missRate, Stats::units::Ratio::get(),
|
||||
("miss rate for " + name + " accesses").c_str()),
|
||||
ADD_STAT(avgMissLatency, Stats::Units::Rate<
|
||||
Stats::Units::Tick, Stats::Units::Count>::get(),
|
||||
ADD_STAT(avgMissLatency, Stats::units::Rate<
|
||||
Stats::units::Tick, Stats::units::Count>::get(),
|
||||
("average " + name + " miss latency").c_str()),
|
||||
ADD_STAT(mshrHits, Stats::Units::Count::get(),
|
||||
ADD_STAT(mshrHits, Stats::units::Count::get(),
|
||||
("number of " + name + " MSHR hits").c_str()),
|
||||
ADD_STAT(mshrMisses, Stats::Units::Count::get(),
|
||||
ADD_STAT(mshrMisses, Stats::units::Count::get(),
|
||||
("number of " + name + " MSHR misses").c_str()),
|
||||
ADD_STAT(mshrUncacheable, Stats::Units::Count::get(),
|
||||
ADD_STAT(mshrUncacheable, Stats::units::Count::get(),
|
||||
("number of " + name + " MSHR uncacheable").c_str()),
|
||||
ADD_STAT(mshrMissLatency, Stats::Units::Tick::get(),
|
||||
ADD_STAT(mshrMissLatency, Stats::units::Tick::get(),
|
||||
("number of " + name + " MSHR miss ticks").c_str()),
|
||||
ADD_STAT(mshrUncacheableLatency, Stats::Units::Tick::get(),
|
||||
ADD_STAT(mshrUncacheableLatency, Stats::units::Tick::get(),
|
||||
("number of " + name + " MSHR uncacheable ticks").c_str()),
|
||||
ADD_STAT(mshrMissRate, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(mshrMissRate, Stats::units::Ratio::get(),
|
||||
("mshr miss rate for " + name + " accesses").c_str()),
|
||||
ADD_STAT(avgMshrMissLatency, Stats::Units::Rate<
|
||||
Stats::Units::Tick, Stats::Units::Count>::get(),
|
||||
ADD_STAT(avgMshrMissLatency, Stats::units::Rate<
|
||||
Stats::units::Tick, Stats::units::Count>::get(),
|
||||
("average " + name + " mshr miss latency").c_str()),
|
||||
ADD_STAT(avgMshrUncacheableLatency, Stats::Units::Rate<
|
||||
Stats::Units::Tick, Stats::Units::Count>::get(),
|
||||
ADD_STAT(avgMshrUncacheableLatency, Stats::units::Rate<
|
||||
Stats::units::Tick, Stats::units::Count>::get(),
|
||||
("average " + name + " mshr uncacheable latency").c_str())
|
||||
{
|
||||
}
|
||||
@@ -2090,76 +2090,76 @@ BaseCache::CacheCmdStats::regStatsFromParent()
|
||||
BaseCache::CacheStats::CacheStats(BaseCache &c)
|
||||
: Stats::Group(&c), cache(c),
|
||||
|
||||
ADD_STAT(demandHits, Stats::Units::Count::get(),
|
||||
ADD_STAT(demandHits, Stats::units::Count::get(),
|
||||
"number of demand (read+write) hits"),
|
||||
ADD_STAT(overallHits, Stats::Units::Count::get(),
|
||||
ADD_STAT(overallHits, Stats::units::Count::get(),
|
||||
"number of overall hits"),
|
||||
ADD_STAT(demandMisses, Stats::Units::Count::get(),
|
||||
ADD_STAT(demandMisses, Stats::units::Count::get(),
|
||||
"number of demand (read+write) misses"),
|
||||
ADD_STAT(overallMisses, Stats::Units::Count::get(),
|
||||
ADD_STAT(overallMisses, Stats::units::Count::get(),
|
||||
"number of overall misses"),
|
||||
ADD_STAT(demandMissLatency, Stats::Units::Tick::get(),
|
||||
ADD_STAT(demandMissLatency, Stats::units::Tick::get(),
|
||||
"number of demand (read+write) miss ticks"),
|
||||
ADD_STAT(overallMissLatency, Stats::Units::Tick::get(),
|
||||
ADD_STAT(overallMissLatency, Stats::units::Tick::get(),
|
||||
"number of overall miss ticks"),
|
||||
ADD_STAT(demandAccesses, Stats::Units::Count::get(),
|
||||
ADD_STAT(demandAccesses, Stats::units::Count::get(),
|
||||
"number of demand (read+write) accesses"),
|
||||
ADD_STAT(overallAccesses, Stats::Units::Count::get(),
|
||||
ADD_STAT(overallAccesses, Stats::units::Count::get(),
|
||||
"number of overall (read+write) accesses"),
|
||||
ADD_STAT(demandMissRate, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(demandMissRate, Stats::units::Ratio::get(),
|
||||
"miss rate for demand accesses"),
|
||||
ADD_STAT(overallMissRate, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(overallMissRate, Stats::units::Ratio::get(),
|
||||
"miss rate for overall accesses"),
|
||||
ADD_STAT(demandAvgMissLatency, Stats::Units::Rate<
|
||||
Stats::Units::Cycle, Stats::Units::Count>::get(),
|
||||
ADD_STAT(demandAvgMissLatency, Stats::units::Rate<
|
||||
Stats::units::Cycle, Stats::units::Count>::get(),
|
||||
"average overall miss latency"),
|
||||
ADD_STAT(overallAvgMissLatency, Stats::Units::Rate<
|
||||
Stats::Units::Cycle, Stats::Units::Count>::get(),
|
||||
ADD_STAT(overallAvgMissLatency, Stats::units::Rate<
|
||||
Stats::units::Cycle, Stats::units::Count>::get(),
|
||||
"average overall miss latency"),
|
||||
ADD_STAT(blockedCycles, Stats::Units::Cycle::get(),
|
||||
ADD_STAT(blockedCycles, Stats::units::Cycle::get(),
|
||||
"number of cycles access was blocked"),
|
||||
ADD_STAT(blockedCauses, Stats::Units::Count::get(),
|
||||
ADD_STAT(blockedCauses, Stats::units::Count::get(),
|
||||
"number of times access was blocked"),
|
||||
ADD_STAT(avgBlocked, Stats::Units::Rate<
|
||||
Stats::Units::Cycle, Stats::Units::Count>::get(),
|
||||
ADD_STAT(avgBlocked, Stats::units::Rate<
|
||||
Stats::units::Cycle, Stats::units::Count>::get(),
|
||||
"average number of cycles each access was blocked"),
|
||||
ADD_STAT(unusedPrefetches, Stats::Units::Count::get(),
|
||||
ADD_STAT(unusedPrefetches, Stats::units::Count::get(),
|
||||
"number of HardPF blocks evicted w/o reference"),
|
||||
ADD_STAT(writebacks, Stats::Units::Count::get(), "number of writebacks"),
|
||||
ADD_STAT(demandMshrHits, Stats::Units::Count::get(),
|
||||
ADD_STAT(writebacks, Stats::units::Count::get(), "number of writebacks"),
|
||||
ADD_STAT(demandMshrHits, Stats::units::Count::get(),
|
||||
"number of demand (read+write) MSHR hits"),
|
||||
ADD_STAT(overallMshrHits, Stats::Units::Count::get(),
|
||||
ADD_STAT(overallMshrHits, Stats::units::Count::get(),
|
||||
"number of overall MSHR hits"),
|
||||
ADD_STAT(demandMshrMisses, Stats::Units::Count::get(),
|
||||
ADD_STAT(demandMshrMisses, Stats::units::Count::get(),
|
||||
"number of demand (read+write) MSHR misses"),
|
||||
ADD_STAT(overallMshrMisses, Stats::Units::Count::get(),
|
||||
ADD_STAT(overallMshrMisses, Stats::units::Count::get(),
|
||||
"number of overall MSHR misses"),
|
||||
ADD_STAT(overallMshrUncacheable, Stats::Units::Count::get(),
|
||||
ADD_STAT(overallMshrUncacheable, Stats::units::Count::get(),
|
||||
"number of overall MSHR uncacheable misses"),
|
||||
ADD_STAT(demandMshrMissLatency, Stats::Units::Tick::get(),
|
||||
ADD_STAT(demandMshrMissLatency, Stats::units::Tick::get(),
|
||||
"number of demand (read+write) MSHR miss ticks"),
|
||||
ADD_STAT(overallMshrMissLatency, Stats::Units::Tick::get(),
|
||||
ADD_STAT(overallMshrMissLatency, Stats::units::Tick::get(),
|
||||
"number of overall MSHR miss ticks"),
|
||||
ADD_STAT(overallMshrUncacheableLatency, Stats::Units::Tick::get(),
|
||||
ADD_STAT(overallMshrUncacheableLatency, Stats::units::Tick::get(),
|
||||
"number of overall MSHR uncacheable ticks"),
|
||||
ADD_STAT(demandMshrMissRate, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(demandMshrMissRate, Stats::units::Ratio::get(),
|
||||
"mshr miss ratio for demand accesses"),
|
||||
ADD_STAT(overallMshrMissRate, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(overallMshrMissRate, Stats::units::Ratio::get(),
|
||||
"mshr miss ratio for overall accesses"),
|
||||
ADD_STAT(demandAvgMshrMissLatency, Stats::Units::Rate<
|
||||
Stats::Units::Cycle, Stats::Units::Count>::get(),
|
||||
ADD_STAT(demandAvgMshrMissLatency, Stats::units::Rate<
|
||||
Stats::units::Cycle, Stats::units::Count>::get(),
|
||||
"average overall mshr miss latency"),
|
||||
ADD_STAT(overallAvgMshrMissLatency, Stats::Units::Rate<
|
||||
Stats::Units::Cycle, Stats::Units::Count>::get(),
|
||||
ADD_STAT(overallAvgMshrMissLatency, Stats::units::Rate<
|
||||
Stats::units::Cycle, Stats::units::Count>::get(),
|
||||
"average overall mshr miss latency"),
|
||||
ADD_STAT(overallAvgMshrUncacheableLatency, Stats::Units::Rate<
|
||||
Stats::Units::Cycle, Stats::Units::Count>::get(),
|
||||
ADD_STAT(overallAvgMshrUncacheableLatency, Stats::units::Rate<
|
||||
Stats::units::Cycle, Stats::units::Count>::get(),
|
||||
"average overall mshr uncacheable latency"),
|
||||
ADD_STAT(replacements, Stats::Units::Count::get(),
|
||||
ADD_STAT(replacements, Stats::units::Count::get(),
|
||||
"number of replacements"),
|
||||
ADD_STAT(dataExpansions, Stats::Units::Count::get(),
|
||||
ADD_STAT(dataExpansions, Stats::units::Count::get(),
|
||||
"number of data expansions"),
|
||||
ADD_STAT(dataContractions, Stats::Units::Count::get(),
|
||||
ADD_STAT(dataContractions, Stats::units::Count::get(),
|
||||
"number of data contractions"),
|
||||
cmd(MemCmd::NUM_MEM_CMDS)
|
||||
{
|
||||
|
||||
14
src/mem/cache/compressors/base.cc
vendored
14
src/mem/cache/compressors/base.cc
vendored
@@ -227,19 +227,19 @@ Base::setSizeBits(CacheBlk* blk, const std::size_t size_bits)
|
||||
|
||||
Base::BaseStats::BaseStats(Base& _compressor)
|
||||
: Stats::Group(&_compressor), compressor(_compressor),
|
||||
ADD_STAT(compressions, Stats::Units::Count::get(),
|
||||
ADD_STAT(compressions, Stats::units::Count::get(),
|
||||
"Total number of compressions"),
|
||||
ADD_STAT(failedCompressions, Stats::Units::Count::get(),
|
||||
ADD_STAT(failedCompressions, Stats::units::Count::get(),
|
||||
"Total number of failed compressions"),
|
||||
ADD_STAT(compressionSize, Stats::Units::Count::get(),
|
||||
ADD_STAT(compressionSize, Stats::units::Count::get(),
|
||||
"Number of blocks that were compressed to this power of two "
|
||||
"size"),
|
||||
ADD_STAT(compressionSizeBits, Stats::Units::Bit::get(),
|
||||
ADD_STAT(compressionSizeBits, Stats::units::Bit::get(),
|
||||
"Total compressed data size"),
|
||||
ADD_STAT(avgCompressionSizeBits, Stats::Units::Rate<
|
||||
Stats::Units::Bit, Stats::Units::Count>::get(),
|
||||
ADD_STAT(avgCompressionSizeBits, Stats::units::Rate<
|
||||
Stats::units::Bit, Stats::units::Count>::get(),
|
||||
"Average compression size"),
|
||||
ADD_STAT(decompressions, Stats::Units::Count::get(),
|
||||
ADD_STAT(decompressions, Stats::units::Count::get(),
|
||||
"Total number of decompressions")
|
||||
{
|
||||
}
|
||||
|
||||
@@ -45,7 +45,7 @@ BaseDictionaryCompressor::BaseDictionaryCompressor(const Params &p)
|
||||
BaseDictionaryCompressor::DictionaryStats::DictionaryStats(
|
||||
BaseStats& base_group, BaseDictionaryCompressor& _compressor)
|
||||
: Stats::Group(&base_group), compressor(_compressor),
|
||||
ADD_STAT(patterns, Stats::Units::Count::get(),
|
||||
ADD_STAT(patterns, Stats::units::Count::get(),
|
||||
"Number of data entries that were compressed to this pattern")
|
||||
{
|
||||
}
|
||||
|
||||
2
src/mem/cache/compressors/multi.cc
vendored
2
src/mem/cache/compressors/multi.cc
vendored
@@ -188,7 +188,7 @@ Multi::decompress(const CompressionData* comp_data,
|
||||
|
||||
Multi::MultiStats::MultiStats(BaseStats& base_group, Multi& _compressor)
|
||||
: Stats::Group(&base_group), compressor(_compressor),
|
||||
ADD_STAT(ranks, Stats::Units::Count::get(),
|
||||
ADD_STAT(ranks, Stats::units::Count::get(),
|
||||
"Number of times each compressor had the nth best compression")
|
||||
{
|
||||
}
|
||||
|
||||
2
src/mem/cache/prefetch/base.cc
vendored
2
src/mem/cache/prefetch/base.cc
vendored
@@ -113,7 +113,7 @@ Base::setCache(BaseCache *_cache)
|
||||
}
|
||||
Base::StatGroup::StatGroup(Stats::Group *parent)
|
||||
: Stats::Group(parent),
|
||||
ADD_STAT(pfIssued, Stats::Units::Count::get(), "number of hwpf issued")
|
||||
ADD_STAT(pfIssued, Stats::units::Count::get(), "number of hwpf issued")
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
10
src/mem/cache/prefetch/queued.cc
vendored
10
src/mem/cache/prefetch/queued.cc
vendored
@@ -226,15 +226,15 @@ Queued::getPacket()
|
||||
}
|
||||
Queued::QueuedStats::QueuedStats(Stats::Group *parent)
|
||||
: Stats::Group(parent),
|
||||
ADD_STAT(pfIdentified, Stats::Units::Count::get(),
|
||||
ADD_STAT(pfIdentified, Stats::units::Count::get(),
|
||||
"number of prefetch candidates identified"),
|
||||
ADD_STAT(pfBufferHit, Stats::Units::Count::get(),
|
||||
ADD_STAT(pfBufferHit, Stats::units::Count::get(),
|
||||
"number of redundant prefetches already in prefetch queue"),
|
||||
ADD_STAT(pfInCache, Stats::Units::Count::get(),
|
||||
ADD_STAT(pfInCache, Stats::units::Count::get(),
|
||||
"number of redundant prefetches already in cache/mshr dropped"),
|
||||
ADD_STAT(pfRemovedFull, Stats::Units::Count::get(),
|
||||
ADD_STAT(pfRemovedFull, Stats::units::Count::get(),
|
||||
"number of prefetches dropped due to prefetch queue size"),
|
||||
ADD_STAT(pfSpanPage, Stats::Units::Count::get(),
|
||||
ADD_STAT(pfSpanPage, Stats::units::Count::get(),
|
||||
"number of prefetches that crossed the page")
|
||||
{
|
||||
}
|
||||
|
||||
32
src/mem/cache/tags/base.cc
vendored
32
src/mem/cache/tags/base.cc
vendored
@@ -216,33 +216,33 @@ BaseTags::BaseTagStats::BaseTagStats(BaseTags &_tags)
|
||||
: Stats::Group(&_tags),
|
||||
tags(_tags),
|
||||
|
||||
ADD_STAT(tagsInUse, Stats::Units::Rate<
|
||||
Stats::Units::Tick, Stats::Units::Count>::get(),
|
||||
ADD_STAT(tagsInUse, Stats::units::Rate<
|
||||
Stats::units::Tick, Stats::units::Count>::get(),
|
||||
"Average ticks per tags in use"),
|
||||
ADD_STAT(totalRefs, Stats::Units::Count::get(),
|
||||
ADD_STAT(totalRefs, Stats::units::Count::get(),
|
||||
"Total number of references to valid blocks."),
|
||||
ADD_STAT(sampledRefs, Stats::Units::Count::get(),
|
||||
ADD_STAT(sampledRefs, Stats::units::Count::get(),
|
||||
"Sample count of references to valid blocks."),
|
||||
ADD_STAT(avgRefs, Stats::Units::Rate<
|
||||
Stats::Units::Count, Stats::Units::Count>::get(),
|
||||
ADD_STAT(avgRefs, Stats::units::Rate<
|
||||
Stats::units::Count, Stats::units::Count>::get(),
|
||||
"Average number of references to valid blocks."),
|
||||
ADD_STAT(warmupTick, Stats::Units::Tick::get(),
|
||||
ADD_STAT(warmupTick, Stats::units::Tick::get(),
|
||||
"The tick when the warmup percentage was hit."),
|
||||
ADD_STAT(occupancies, Stats::Units::Rate<
|
||||
Stats::Units::Count, Stats::Units::Tick>::get(),
|
||||
ADD_STAT(occupancies, Stats::units::Rate<
|
||||
Stats::units::Count, Stats::units::Tick>::get(),
|
||||
"Average occupied blocks per tick, per requestor"),
|
||||
ADD_STAT(avgOccs, Stats::Units::Rate<
|
||||
Stats::Units::Ratio, Stats::Units::Tick>::get(),
|
||||
ADD_STAT(avgOccs, Stats::units::Rate<
|
||||
Stats::units::Ratio, Stats::units::Tick>::get(),
|
||||
"Average percentage of cache occupancy"),
|
||||
ADD_STAT(occupanciesTaskId, Stats::Units::Count::get(),
|
||||
ADD_STAT(occupanciesTaskId, Stats::units::Count::get(),
|
||||
"Occupied blocks per task id"),
|
||||
ADD_STAT(ageTaskId, Stats::Units::Count::get(),
|
||||
ADD_STAT(ageTaskId, Stats::units::Count::get(),
|
||||
"Occupied blocks per task id, per block age"),
|
||||
ADD_STAT(ratioOccsTaskId, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(ratioOccsTaskId, Stats::units::Ratio::get(),
|
||||
"Ratio of occupied blocks and all blocks, per task id"),
|
||||
ADD_STAT(tagAccesses, Stats::Units::Count::get(),
|
||||
ADD_STAT(tagAccesses, Stats::units::Count::get(),
|
||||
"Number of tag accesses"),
|
||||
ADD_STAT(dataAccesses, Stats::Units::Count::get(),
|
||||
ADD_STAT(dataAccesses, Stats::units::Count::get(),
|
||||
"Number of data accesses")
|
||||
{
|
||||
}
|
||||
|
||||
6
src/mem/cache/tags/fa_lru.cc
vendored
6
src/mem/cache/tags/fa_lru.cc
vendored
@@ -300,11 +300,11 @@ FALRU::CacheTracking::CacheTracking(unsigned min_size, unsigned max_size,
|
||||
floorLog2(max_size) - floorLog2(min_size) : 0),
|
||||
inAllCachesMask(mask(numTrackedCaches)),
|
||||
boundaries(numTrackedCaches),
|
||||
ADD_STAT(hits, Stats::Units::Count::get(),
|
||||
ADD_STAT(hits, Stats::units::Count::get(),
|
||||
"The number of hits in each cache size."),
|
||||
ADD_STAT(misses, Stats::Units::Count::get(),
|
||||
ADD_STAT(misses, Stats::units::Count::get(),
|
||||
"The number of misses in each cache size."),
|
||||
ADD_STAT(accesses, Stats::Units::Count::get(),
|
||||
ADD_STAT(accesses, Stats::units::Count::get(),
|
||||
"The number of accesses to the FA LRU cache.")
|
||||
{
|
||||
fatal_if(numTrackedCaches > sizeof(CachesMask) * 8,
|
||||
|
||||
2
src/mem/cache/tags/sector_tags.cc
vendored
2
src/mem/cache/tags/sector_tags.cc
vendored
@@ -338,7 +338,7 @@ SectorTags::regenerateBlkAddr(const CacheBlk* blk) const
|
||||
SectorTags::SectorTagsStats::SectorTagsStats(BaseTagStats &base_group,
|
||||
SectorTags& _tags)
|
||||
: Stats::Group(&base_group), tags(_tags),
|
||||
ADD_STAT(evictionsReplacement, Stats::Units::Count::get(),
|
||||
ADD_STAT(evictionsReplacement, Stats::units::Count::get(),
|
||||
"Number of blocks evicted due to a replacement")
|
||||
{
|
||||
}
|
||||
|
||||
@@ -60,9 +60,9 @@ CoherentXBar::CoherentXBar(const CoherentXBarParams &p)
|
||||
pointOfCoherency(p.point_of_coherency),
|
||||
pointOfUnification(p.point_of_unification),
|
||||
|
||||
ADD_STAT(snoops, Stats::Units::Count::get(), "Total snoops"),
|
||||
ADD_STAT(snoopTraffic, Stats::Units::Byte::get(), "Total snoop traffic"),
|
||||
ADD_STAT(snoopFanout, Stats::Units::Count::get(),
|
||||
ADD_STAT(snoops, Stats::units::Count::get(), "Total snoops"),
|
||||
ADD_STAT(snoopTraffic, Stats::units::Byte::get(), "Total snoop traffic"),
|
||||
ADD_STAT(snoopFanout, Stats::units::Count::get(),
|
||||
"Request fanout histogram")
|
||||
{
|
||||
// create the ports based on the size of the memory-side port and
|
||||
|
||||
@@ -101,72 +101,72 @@ CommMonitor::MonitorStats::MonitorStats(Stats::Group *parent,
|
||||
: Stats::Group(parent),
|
||||
|
||||
disableBurstLengthHists(params.disable_burst_length_hists),
|
||||
ADD_STAT(readBurstLengthHist, Stats::Units::Byte::get(),
|
||||
ADD_STAT(readBurstLengthHist, Stats::units::Byte::get(),
|
||||
"Histogram of burst lengths of transmitted packets"),
|
||||
ADD_STAT(writeBurstLengthHist, Stats::Units::Byte::get(),
|
||||
ADD_STAT(writeBurstLengthHist, Stats::units::Byte::get(),
|
||||
"Histogram of burst lengths of transmitted packets"),
|
||||
|
||||
disableBandwidthHists(params.disable_bandwidth_hists),
|
||||
readBytes(0),
|
||||
ADD_STAT(readBandwidthHist, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(readBandwidthHist, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Histogram of read bandwidth per sample period"),
|
||||
ADD_STAT(totalReadBytes, Stats::Units::Byte::get(),
|
||||
ADD_STAT(totalReadBytes, Stats::units::Byte::get(),
|
||||
"Number of bytes read"),
|
||||
ADD_STAT(averageReadBandwidth, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(averageReadBandwidth, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Average read bandwidth",
|
||||
totalReadBytes / simSeconds),
|
||||
|
||||
writtenBytes(0),
|
||||
ADD_STAT(writeBandwidthHist, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(writeBandwidthHist, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Histogram of write bandwidth"),
|
||||
ADD_STAT(totalWrittenBytes, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(totalWrittenBytes, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Number of bytes written"),
|
||||
ADD_STAT(averageWriteBandwidth, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(averageWriteBandwidth, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Average write bandwidth",
|
||||
totalWrittenBytes / simSeconds),
|
||||
|
||||
disableLatencyHists(params.disable_latency_hists),
|
||||
ADD_STAT(readLatencyHist, Stats::Units::Tick::get(),
|
||||
ADD_STAT(readLatencyHist, Stats::units::Tick::get(),
|
||||
"Read request-response latency"),
|
||||
ADD_STAT(writeLatencyHist, Stats::Units::Tick::get(),
|
||||
ADD_STAT(writeLatencyHist, Stats::units::Tick::get(),
|
||||
"Write request-response latency"),
|
||||
|
||||
disableITTDists(params.disable_itt_dists),
|
||||
ADD_STAT(ittReadRead, Stats::Units::Tick::get(),
|
||||
ADD_STAT(ittReadRead, Stats::units::Tick::get(),
|
||||
"Read-to-read inter transaction time"),
|
||||
ADD_STAT(ittWriteWrite, Stats::Units::Tick::get(),
|
||||
ADD_STAT(ittWriteWrite, Stats::units::Tick::get(),
|
||||
"Write-to-write inter transaction time"),
|
||||
ADD_STAT(ittReqReq, Stats::Units::Tick::get(),
|
||||
ADD_STAT(ittReqReq, Stats::units::Tick::get(),
|
||||
"Request-to-request inter transaction time"),
|
||||
timeOfLastRead(0), timeOfLastWrite(0), timeOfLastReq(0),
|
||||
|
||||
disableOutstandingHists(params.disable_outstanding_hists),
|
||||
ADD_STAT(outstandingReadsHist, Stats::Units::Count::get(),
|
||||
ADD_STAT(outstandingReadsHist, Stats::units::Count::get(),
|
||||
"Outstanding read transactions"),
|
||||
outstandingReadReqs(0),
|
||||
ADD_STAT(outstandingWritesHist, Stats::Units::Count::get(),
|
||||
ADD_STAT(outstandingWritesHist, Stats::units::Count::get(),
|
||||
"Outstanding write transactions"),
|
||||
outstandingWriteReqs(0),
|
||||
|
||||
disableTransactionHists(params.disable_transaction_hists),
|
||||
ADD_STAT(readTransHist, Stats::Units::Count::get(),
|
||||
ADD_STAT(readTransHist, Stats::units::Count::get(),
|
||||
"Histogram of read transactions per sample period"),
|
||||
readTrans(0),
|
||||
ADD_STAT(writeTransHist, Stats::Units::Count::get(),
|
||||
ADD_STAT(writeTransHist, Stats::units::Count::get(),
|
||||
"Histogram of write transactions per sample period"),
|
||||
writeTrans(0),
|
||||
|
||||
disableAddrDists(params.disable_addr_dists),
|
||||
readAddrMask(params.read_addr_mask),
|
||||
writeAddrMask(params.write_addr_mask),
|
||||
ADD_STAT(readAddrDist, Stats::Units::Count::get(),
|
||||
ADD_STAT(readAddrDist, Stats::units::Count::get(),
|
||||
"Read address distribution"),
|
||||
ADD_STAT(writeAddrDist, Stats::Units::Count::get(),
|
||||
ADD_STAT(writeAddrDist, Stats::units::Count::get(),
|
||||
"Write address distribution")
|
||||
{
|
||||
using namespace Stats;
|
||||
|
||||
@@ -1185,94 +1185,94 @@ MemCtrl::CtrlStats::CtrlStats(MemCtrl &_ctrl)
|
||||
: Stats::Group(&_ctrl),
|
||||
ctrl(_ctrl),
|
||||
|
||||
ADD_STAT(readReqs, Stats::Units::Count::get(),
|
||||
ADD_STAT(readReqs, Stats::units::Count::get(),
|
||||
"Number of read requests accepted"),
|
||||
ADD_STAT(writeReqs, Stats::Units::Count::get(),
|
||||
ADD_STAT(writeReqs, Stats::units::Count::get(),
|
||||
"Number of write requests accepted"),
|
||||
|
||||
ADD_STAT(readBursts, Stats::Units::Count::get(),
|
||||
ADD_STAT(readBursts, Stats::units::Count::get(),
|
||||
"Number of controller read bursts, including those serviced by "
|
||||
"the write queue"),
|
||||
ADD_STAT(writeBursts, Stats::Units::Count::get(),
|
||||
ADD_STAT(writeBursts, Stats::units::Count::get(),
|
||||
"Number of controller write bursts, including those merged in "
|
||||
"the write queue"),
|
||||
ADD_STAT(servicedByWrQ, Stats::Units::Count::get(),
|
||||
ADD_STAT(servicedByWrQ, Stats::units::Count::get(),
|
||||
"Number of controller read bursts serviced by the write queue"),
|
||||
ADD_STAT(mergedWrBursts, Stats::Units::Count::get(),
|
||||
ADD_STAT(mergedWrBursts, Stats::units::Count::get(),
|
||||
"Number of controller write bursts merged with an existing one"),
|
||||
|
||||
ADD_STAT(neitherReadNorWriteReqs, Stats::Units::Count::get(),
|
||||
ADD_STAT(neitherReadNorWriteReqs, Stats::units::Count::get(),
|
||||
"Number of requests that are neither read nor write"),
|
||||
|
||||
ADD_STAT(avgRdQLen, Stats::Units::Rate<
|
||||
Stats::Units::Count, Stats::Units::Tick>::get(),
|
||||
ADD_STAT(avgRdQLen, Stats::units::Rate<
|
||||
Stats::units::Count, Stats::units::Tick>::get(),
|
||||
"Average read queue length when enqueuing"),
|
||||
ADD_STAT(avgWrQLen, Stats::Units::Rate<
|
||||
Stats::Units::Count, Stats::Units::Tick>::get(),
|
||||
ADD_STAT(avgWrQLen, Stats::units::Rate<
|
||||
Stats::units::Count, Stats::units::Tick>::get(),
|
||||
"Average write queue length when enqueuing"),
|
||||
|
||||
ADD_STAT(numRdRetry, Stats::Units::Count::get(),
|
||||
ADD_STAT(numRdRetry, Stats::units::Count::get(),
|
||||
"Number of times read queue was full causing retry"),
|
||||
ADD_STAT(numWrRetry, Stats::Units::Count::get(),
|
||||
ADD_STAT(numWrRetry, Stats::units::Count::get(),
|
||||
"Number of times write queue was full causing retry"),
|
||||
|
||||
ADD_STAT(readPktSize, Stats::Units::Count::get(),
|
||||
ADD_STAT(readPktSize, Stats::units::Count::get(),
|
||||
"Read request sizes (log2)"),
|
||||
ADD_STAT(writePktSize, Stats::Units::Count::get(),
|
||||
ADD_STAT(writePktSize, Stats::units::Count::get(),
|
||||
"Write request sizes (log2)"),
|
||||
|
||||
ADD_STAT(rdQLenPdf, Stats::Units::Count::get(),
|
||||
ADD_STAT(rdQLenPdf, Stats::units::Count::get(),
|
||||
"What read queue length does an incoming req see"),
|
||||
ADD_STAT(wrQLenPdf, Stats::Units::Count::get(),
|
||||
ADD_STAT(wrQLenPdf, Stats::units::Count::get(),
|
||||
"What write queue length does an incoming req see"),
|
||||
|
||||
ADD_STAT(rdPerTurnAround, Stats::Units::Count::get(),
|
||||
ADD_STAT(rdPerTurnAround, Stats::units::Count::get(),
|
||||
"Reads before turning the bus around for writes"),
|
||||
ADD_STAT(wrPerTurnAround, Stats::Units::Count::get(),
|
||||
ADD_STAT(wrPerTurnAround, Stats::units::Count::get(),
|
||||
"Writes before turning the bus around for reads"),
|
||||
|
||||
ADD_STAT(bytesReadWrQ, Stats::Units::Byte::get(),
|
||||
ADD_STAT(bytesReadWrQ, Stats::units::Byte::get(),
|
||||
"Total number of bytes read from write queue"),
|
||||
ADD_STAT(bytesReadSys, Stats::Units::Byte::get(),
|
||||
ADD_STAT(bytesReadSys, Stats::units::Byte::get(),
|
||||
"Total read bytes from the system interface side"),
|
||||
ADD_STAT(bytesWrittenSys, Stats::Units::Byte::get(),
|
||||
ADD_STAT(bytesWrittenSys, Stats::units::Byte::get(),
|
||||
"Total written bytes from the system interface side"),
|
||||
|
||||
ADD_STAT(avgRdBWSys, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(avgRdBWSys, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Average system read bandwidth in Byte/s"),
|
||||
ADD_STAT(avgWrBWSys, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(avgWrBWSys, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Average system write bandwidth in Byte/s"),
|
||||
|
||||
ADD_STAT(totGap, Stats::Units::Tick::get(), "Total gap between requests"),
|
||||
ADD_STAT(avgGap, Stats::Units::Rate<
|
||||
Stats::Units::Tick, Stats::Units::Count>::get(),
|
||||
ADD_STAT(totGap, Stats::units::Tick::get(), "Total gap between requests"),
|
||||
ADD_STAT(avgGap, Stats::units::Rate<
|
||||
Stats::units::Tick, Stats::units::Count>::get(),
|
||||
"Average gap between requests"),
|
||||
|
||||
ADD_STAT(requestorReadBytes, Stats::Units::Byte::get(),
|
||||
ADD_STAT(requestorReadBytes, Stats::units::Byte::get(),
|
||||
"Per-requestor bytes read from memory"),
|
||||
ADD_STAT(requestorWriteBytes, Stats::Units::Byte::get(),
|
||||
ADD_STAT(requestorWriteBytes, Stats::units::Byte::get(),
|
||||
"Per-requestor bytes write to memory"),
|
||||
ADD_STAT(requestorReadRate, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(requestorReadRate, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Per-requestor bytes read from memory rate"),
|
||||
ADD_STAT(requestorWriteRate, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(requestorWriteRate, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Per-requestor bytes write to memory rate"),
|
||||
ADD_STAT(requestorReadAccesses, Stats::Units::Count::get(),
|
||||
ADD_STAT(requestorReadAccesses, Stats::units::Count::get(),
|
||||
"Per-requestor read serviced memory accesses"),
|
||||
ADD_STAT(requestorWriteAccesses, Stats::Units::Count::get(),
|
||||
ADD_STAT(requestorWriteAccesses, Stats::units::Count::get(),
|
||||
"Per-requestor write serviced memory accesses"),
|
||||
ADD_STAT(requestorReadTotalLat, Stats::Units::Tick::get(),
|
||||
ADD_STAT(requestorReadTotalLat, Stats::units::Tick::get(),
|
||||
"Per-requestor read total memory access latency"),
|
||||
ADD_STAT(requestorWriteTotalLat, Stats::Units::Tick::get(),
|
||||
ADD_STAT(requestorWriteTotalLat, Stats::units::Tick::get(),
|
||||
"Per-requestor write total memory access latency"),
|
||||
ADD_STAT(requestorReadAvgLat, Stats::Units::Rate<
|
||||
Stats::Units::Tick, Stats::Units::Count>::get(),
|
||||
ADD_STAT(requestorReadAvgLat, Stats::units::Rate<
|
||||
Stats::units::Tick, Stats::units::Count>::get(),
|
||||
"Per-requestor read average memory access latency"),
|
||||
ADD_STAT(requestorWriteAvgLat, Stats::Units::Rate<
|
||||
Stats::Units::Tick, Stats::Units::Count>::get(),
|
||||
ADD_STAT(requestorWriteAvgLat, Stats::units::Rate<
|
||||
Stats::units::Tick, Stats::units::Count>::get(),
|
||||
"Per-requestor write average memory access latency")
|
||||
|
||||
{
|
||||
|
||||
@@ -1849,66 +1849,66 @@ DRAMInterface::DRAMStats::DRAMStats(DRAMInterface &_dram)
|
||||
: Stats::Group(&_dram),
|
||||
dram(_dram),
|
||||
|
||||
ADD_STAT(readBursts, Stats::Units::Count::get(),
|
||||
ADD_STAT(readBursts, Stats::units::Count::get(),
|
||||
"Number of DRAM read bursts"),
|
||||
ADD_STAT(writeBursts, Stats::Units::Count::get(),
|
||||
ADD_STAT(writeBursts, Stats::units::Count::get(),
|
||||
"Number of DRAM write bursts"),
|
||||
|
||||
ADD_STAT(perBankRdBursts, Stats::Units::Count::get(),
|
||||
ADD_STAT(perBankRdBursts, Stats::units::Count::get(),
|
||||
"Per bank write bursts"),
|
||||
ADD_STAT(perBankWrBursts, Stats::Units::Count::get(),
|
||||
ADD_STAT(perBankWrBursts, Stats::units::Count::get(),
|
||||
"Per bank write bursts"),
|
||||
|
||||
ADD_STAT(totQLat, Stats::Units::Tick::get(), "Total ticks spent queuing"),
|
||||
ADD_STAT(totBusLat, Stats::Units::Tick::get(),
|
||||
ADD_STAT(totQLat, Stats::units::Tick::get(), "Total ticks spent queuing"),
|
||||
ADD_STAT(totBusLat, Stats::units::Tick::get(),
|
||||
"Total ticks spent in databus transfers"),
|
||||
ADD_STAT(totMemAccLat, Stats::Units::Tick::get(),
|
||||
ADD_STAT(totMemAccLat, Stats::units::Tick::get(),
|
||||
"Total ticks spent from burst creation until serviced "
|
||||
"by the DRAM"),
|
||||
|
||||
ADD_STAT(avgQLat, Stats::Units::Rate<
|
||||
Stats::Units::Tick, Stats::Units::Count>::get(),
|
||||
ADD_STAT(avgQLat, Stats::units::Rate<
|
||||
Stats::units::Tick, Stats::units::Count>::get(),
|
||||
"Average queueing delay per DRAM burst"),
|
||||
ADD_STAT(avgBusLat, Stats::Units::Rate<
|
||||
Stats::Units::Tick, Stats::Units::Count>::get(),
|
||||
ADD_STAT(avgBusLat, Stats::units::Rate<
|
||||
Stats::units::Tick, Stats::units::Count>::get(),
|
||||
"Average bus latency per DRAM burst"),
|
||||
ADD_STAT(avgMemAccLat, Stats::Units::Rate<
|
||||
Stats::Units::Tick, Stats::Units::Count>::get(),
|
||||
ADD_STAT(avgMemAccLat, Stats::units::Rate<
|
||||
Stats::units::Tick, Stats::units::Count>::get(),
|
||||
"Average memory access latency per DRAM burst"),
|
||||
|
||||
ADD_STAT(readRowHits, Stats::Units::Count::get(),
|
||||
ADD_STAT(readRowHits, Stats::units::Count::get(),
|
||||
"Number of row buffer hits during reads"),
|
||||
ADD_STAT(writeRowHits, Stats::Units::Count::get(),
|
||||
ADD_STAT(writeRowHits, Stats::units::Count::get(),
|
||||
"Number of row buffer hits during writes"),
|
||||
ADD_STAT(readRowHitRate, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(readRowHitRate, Stats::units::Ratio::get(),
|
||||
"Row buffer hit rate for reads"),
|
||||
ADD_STAT(writeRowHitRate, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(writeRowHitRate, Stats::units::Ratio::get(),
|
||||
"Row buffer hit rate for writes"),
|
||||
|
||||
ADD_STAT(bytesPerActivate, Stats::Units::Byte::get(),
|
||||
ADD_STAT(bytesPerActivate, Stats::units::Byte::get(),
|
||||
"Bytes accessed per row activation"),
|
||||
ADD_STAT(bytesRead, Stats::Units::Byte::get(),
|
||||
ADD_STAT(bytesRead, Stats::units::Byte::get(),
|
||||
"Total number of bytes read from DRAM"),
|
||||
ADD_STAT(bytesWritten, Stats::Units::Byte::get(),
|
||||
ADD_STAT(bytesWritten, Stats::units::Byte::get(),
|
||||
"Total number of bytes written to DRAM"),
|
||||
ADD_STAT(avgRdBW, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(avgRdBW, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Average DRAM read bandwidth in MiBytes/s"),
|
||||
ADD_STAT(avgWrBW, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(avgWrBW, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Average DRAM write bandwidth in MiBytes/s"),
|
||||
ADD_STAT(peakBW, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(peakBW, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Theoretical peak bandwidth in MiByte/s"),
|
||||
|
||||
ADD_STAT(busUtil, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(busUtil, Stats::units::Ratio::get(),
|
||||
"Data bus utilization in percentage"),
|
||||
ADD_STAT(busUtilRead, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(busUtilRead, Stats::units::Ratio::get(),
|
||||
"Data bus utilization in percentage for reads"),
|
||||
ADD_STAT(busUtilWrite, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(busUtilWrite, Stats::units::Ratio::get(),
|
||||
"Data bus utilization in percentage for writes"),
|
||||
|
||||
ADD_STAT(pageHitRate, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(pageHitRate, Stats::units::Ratio::get(),
|
||||
"Row buffer hit rate, read and write combined")
|
||||
|
||||
{
|
||||
@@ -1966,35 +1966,35 @@ DRAMInterface::RankStats::RankStats(DRAMInterface &_dram, Rank &_rank)
|
||||
: Stats::Group(&_dram, csprintf("rank%d", _rank.rank).c_str()),
|
||||
rank(_rank),
|
||||
|
||||
ADD_STAT(actEnergy, Stats::Units::Joule::get(),
|
||||
ADD_STAT(actEnergy, Stats::units::Joule::get(),
|
||||
"Energy for activate commands per rank (pJ)"),
|
||||
ADD_STAT(preEnergy, Stats::Units::Joule::get(),
|
||||
ADD_STAT(preEnergy, Stats::units::Joule::get(),
|
||||
"Energy for precharge commands per rank (pJ)"),
|
||||
ADD_STAT(readEnergy, Stats::Units::Joule::get(),
|
||||
ADD_STAT(readEnergy, Stats::units::Joule::get(),
|
||||
"Energy for read commands per rank (pJ)"),
|
||||
ADD_STAT(writeEnergy, Stats::Units::Joule::get(),
|
||||
ADD_STAT(writeEnergy, Stats::units::Joule::get(),
|
||||
"Energy for write commands per rank (pJ)"),
|
||||
ADD_STAT(refreshEnergy, Stats::Units::Joule::get(),
|
||||
ADD_STAT(refreshEnergy, Stats::units::Joule::get(),
|
||||
"Energy for refresh commands per rank (pJ)"),
|
||||
ADD_STAT(actBackEnergy, Stats::Units::Joule::get(),
|
||||
ADD_STAT(actBackEnergy, Stats::units::Joule::get(),
|
||||
"Energy for active background per rank (pJ)"),
|
||||
ADD_STAT(preBackEnergy, Stats::Units::Joule::get(),
|
||||
ADD_STAT(preBackEnergy, Stats::units::Joule::get(),
|
||||
"Energy for precharge background per rank (pJ)"),
|
||||
ADD_STAT(actPowerDownEnergy, Stats::Units::Joule::get(),
|
||||
ADD_STAT(actPowerDownEnergy, Stats::units::Joule::get(),
|
||||
"Energy for active power-down per rank (pJ)"),
|
||||
ADD_STAT(prePowerDownEnergy, Stats::Units::Joule::get(),
|
||||
ADD_STAT(prePowerDownEnergy, Stats::units::Joule::get(),
|
||||
"Energy for precharge power-down per rank (pJ)"),
|
||||
ADD_STAT(selfRefreshEnergy, Stats::Units::Joule::get(),
|
||||
ADD_STAT(selfRefreshEnergy, Stats::units::Joule::get(),
|
||||
"Energy for self refresh per rank (pJ)"),
|
||||
|
||||
ADD_STAT(totalEnergy, Stats::Units::Joule::get(),
|
||||
ADD_STAT(totalEnergy, Stats::units::Joule::get(),
|
||||
"Total energy per rank (pJ)"),
|
||||
ADD_STAT(averagePower, Stats::Units::Watt::get(),
|
||||
ADD_STAT(averagePower, Stats::units::Watt::get(),
|
||||
"Core power per rank (mW)"),
|
||||
|
||||
ADD_STAT(totalIdleTime, Stats::Units::Tick::get(),
|
||||
ADD_STAT(totalIdleTime, Stats::units::Tick::get(),
|
||||
"Total Idle time Per DRAM Rank"),
|
||||
ADD_STAT(pwrStateTime, Stats::Units::Tick::get(),
|
||||
ADD_STAT(pwrStateTime, Stats::units::Tick::get(),
|
||||
"Time in different power states")
|
||||
{
|
||||
}
|
||||
@@ -2516,57 +2516,57 @@ NVMInterface::NVMStats::NVMStats(NVMInterface &_nvm)
|
||||
: Stats::Group(&_nvm),
|
||||
nvm(_nvm),
|
||||
|
||||
ADD_STAT(readBursts, Stats::Units::Count::get(),
|
||||
ADD_STAT(readBursts, Stats::units::Count::get(),
|
||||
"Number of NVM read bursts"),
|
||||
ADD_STAT(writeBursts, Stats::Units::Count::get(),
|
||||
ADD_STAT(writeBursts, Stats::units::Count::get(),
|
||||
"Number of NVM write bursts"),
|
||||
|
||||
ADD_STAT(perBankRdBursts, Stats::Units::Count::get(),
|
||||
ADD_STAT(perBankRdBursts, Stats::units::Count::get(),
|
||||
"Per bank write bursts"),
|
||||
ADD_STAT(perBankWrBursts, Stats::Units::Count::get(),
|
||||
ADD_STAT(perBankWrBursts, Stats::units::Count::get(),
|
||||
"Per bank write bursts"),
|
||||
|
||||
ADD_STAT(totQLat, Stats::Units::Tick::get(), "Total ticks spent queuing"),
|
||||
ADD_STAT(totBusLat, Stats::Units::Tick::get(),
|
||||
ADD_STAT(totQLat, Stats::units::Tick::get(), "Total ticks spent queuing"),
|
||||
ADD_STAT(totBusLat, Stats::units::Tick::get(),
|
||||
"Total ticks spent in databus transfers"),
|
||||
ADD_STAT(totMemAccLat, Stats::Units::Tick::get(),
|
||||
ADD_STAT(totMemAccLat, Stats::units::Tick::get(),
|
||||
"Total ticks spent from burst creation until serviced "
|
||||
"by the NVM"),
|
||||
ADD_STAT(avgQLat, Stats::Units::Rate<
|
||||
Stats::Units::Tick, Stats::Units::Count>::get(),
|
||||
ADD_STAT(avgQLat, Stats::units::Rate<
|
||||
Stats::units::Tick, Stats::units::Count>::get(),
|
||||
"Average queueing delay per NVM burst"),
|
||||
ADD_STAT(avgBusLat, Stats::Units::Rate<
|
||||
Stats::Units::Tick, Stats::Units::Count>::get(),
|
||||
ADD_STAT(avgBusLat, Stats::units::Rate<
|
||||
Stats::units::Tick, Stats::units::Count>::get(),
|
||||
"Average bus latency per NVM burst"),
|
||||
ADD_STAT(avgMemAccLat, Stats::Units::Rate<
|
||||
Stats::Units::Tick, Stats::Units::Count>::get(),
|
||||
ADD_STAT(avgMemAccLat, Stats::units::Rate<
|
||||
Stats::units::Tick, Stats::units::Count>::get(),
|
||||
"Average memory access latency per NVM burst"),
|
||||
|
||||
ADD_STAT(bytesRead, Stats::Units::Byte::get(),
|
||||
ADD_STAT(bytesRead, Stats::units::Byte::get(),
|
||||
"Total number of bytes read from DRAM"),
|
||||
ADD_STAT(bytesWritten, Stats::Units::Byte::get(),
|
||||
ADD_STAT(bytesWritten, Stats::units::Byte::get(),
|
||||
"Total number of bytes written to DRAM"),
|
||||
ADD_STAT(avgRdBW, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(avgRdBW, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Average DRAM read bandwidth in MiBytes/s"),
|
||||
ADD_STAT(avgWrBW, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(avgWrBW, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Average DRAM write bandwidth in MiBytes/s"),
|
||||
ADD_STAT(peakBW, Stats::Units::Rate<
|
||||
Stats::Units::Byte, Stats::Units::Second>::get(),
|
||||
ADD_STAT(peakBW, Stats::units::Rate<
|
||||
Stats::units::Byte, Stats::units::Second>::get(),
|
||||
"Theoretical peak bandwidth in MiByte/s"),
|
||||
ADD_STAT(busUtil, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(busUtil, Stats::units::Ratio::get(),
|
||||
"NVM Data bus utilization in percentage"),
|
||||
ADD_STAT(busUtilRead, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(busUtilRead, Stats::units::Ratio::get(),
|
||||
"NVM Data bus read utilization in percentage"),
|
||||
ADD_STAT(busUtilWrite, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(busUtilWrite, Stats::units::Ratio::get(),
|
||||
"NVM Data bus write utilization in percentage"),
|
||||
|
||||
ADD_STAT(pendingReads, Stats::Units::Count::get(),
|
||||
ADD_STAT(pendingReads, Stats::units::Count::get(),
|
||||
"Reads issued to NVM for which data has not been transferred"),
|
||||
ADD_STAT(pendingWrites, Stats::Units::Count::get(),
|
||||
ADD_STAT(pendingWrites, Stats::units::Count::get(),
|
||||
"Number of outstanding writes to NVM"),
|
||||
ADD_STAT(bytesPerBank, Stats::Units::Byte::get(),
|
||||
ADD_STAT(bytesPerBank, Stats::units::Byte::get(),
|
||||
"Bytes read within a bank before loading new bank")
|
||||
|
||||
{
|
||||
|
||||
@@ -63,14 +63,14 @@ MemFootprintProbe::MemFootprintProbe(const MemFootprintProbeParams &p)
|
||||
MemFootprintProbe::
|
||||
MemFootprintProbeStats::MemFootprintProbeStats(MemFootprintProbe *parent)
|
||||
: Stats::Group(parent),
|
||||
ADD_STAT(cacheLine, Stats::Units::Count::get(),
|
||||
ADD_STAT(cacheLine, Stats::units::Count::get(),
|
||||
"Memory footprint at cache line granularity"),
|
||||
ADD_STAT(cacheLineTotal, Stats::Units::Count::get(),
|
||||
ADD_STAT(cacheLineTotal, Stats::units::Count::get(),
|
||||
"Total memory footprint at cache line granularity since "
|
||||
"simulation begin"),
|
||||
ADD_STAT(page, Stats::Units::Count::get(),
|
||||
ADD_STAT(page, Stats::units::Count::get(),
|
||||
"Memory footprint at page granularity"),
|
||||
ADD_STAT(pageTotal, Stats::Units::Count::get(),
|
||||
ADD_STAT(pageTotal, Stats::units::Count::get(),
|
||||
"Total memory footprint at page granularity since simulation "
|
||||
"begin")
|
||||
{
|
||||
|
||||
@@ -56,15 +56,15 @@ StackDistProbe::StackDistProbe(const StackDistProbeParams &p)
|
||||
StackDistProbe::
|
||||
StackDistProbeStats::StackDistProbeStats(StackDistProbe *parent)
|
||||
: Stats::Group(parent),
|
||||
ADD_STAT(readLinearHist, Stats::Units::Count::get(),
|
||||
ADD_STAT(readLinearHist, Stats::units::Count::get(),
|
||||
"Reads linear distribution"),
|
||||
ADD_STAT(readLogHist, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(readLogHist, Stats::units::Ratio::get(),
|
||||
"Reads logarithmic distribution"),
|
||||
ADD_STAT(writeLinearHist, Stats::Units::Count::get(),
|
||||
ADD_STAT(writeLinearHist, Stats::units::Count::get(),
|
||||
"Writes linear distribution"),
|
||||
ADD_STAT(writeLogHist, Stats::Units::Ratio::get(),
|
||||
ADD_STAT(writeLogHist, Stats::units::Ratio::get(),
|
||||
"Writes logarithmic distribution"),
|
||||
ADD_STAT(infiniteSD, Stats::Units::Count::get(),
|
||||
ADD_STAT(infiniteSD, Stats::units::Count::get(),
|
||||
"Number of requests with infinite stack distance")
|
||||
{
|
||||
using namespace Stats;
|
||||
|
||||
@@ -281,23 +281,23 @@ MemCtrl::MemCtrlStats::MemCtrlStats(MemCtrl &mc)
|
||||
: Stats::Group(&mc),
|
||||
memCtrl(mc),
|
||||
|
||||
ADD_STAT(avgPriority, Stats::Units::Count::get(),
|
||||
ADD_STAT(avgPriority, Stats::units::Count::get(),
|
||||
"Average QoS priority value for accepted requests"),
|
||||
ADD_STAT(avgPriorityDistance, Stats::Units::Count::get(),
|
||||
ADD_STAT(avgPriorityDistance, Stats::units::Count::get(),
|
||||
"Average QoS priority distance between assigned and queued "
|
||||
"values"),
|
||||
|
||||
ADD_STAT(priorityMinLatency, Stats::Units::Second::get(),
|
||||
ADD_STAT(priorityMinLatency, Stats::units::Second::get(),
|
||||
"per QoS priority minimum request to response latency"),
|
||||
ADD_STAT(priorityMaxLatency, Stats::Units::Second::get(),
|
||||
ADD_STAT(priorityMaxLatency, Stats::units::Second::get(),
|
||||
"per QoS priority maximum request to response latency"),
|
||||
ADD_STAT(numReadWriteTurnArounds, Stats::Units::Count::get(),
|
||||
ADD_STAT(numReadWriteTurnArounds, Stats::units::Count::get(),
|
||||
"Number of turnarounds from READ to WRITE"),
|
||||
ADD_STAT(numWriteReadTurnArounds, Stats::Units::Count::get(),
|
||||
ADD_STAT(numWriteReadTurnArounds, Stats::units::Count::get(),
|
||||
"Number of turnarounds from WRITE to READ"),
|
||||
ADD_STAT(numStayReadState, Stats::Units::Count::get(),
|
||||
ADD_STAT(numStayReadState, Stats::units::Count::get(),
|
||||
"Number of times bus staying in READ state"),
|
||||
ADD_STAT(numStayWriteState, Stats::Units::Count::get(),
|
||||
ADD_STAT(numStayWriteState, Stats::units::Count::get(),
|
||||
"Number of times bus staying in WRITE state")
|
||||
{
|
||||
}
|
||||
|
||||
@@ -336,9 +336,9 @@ MemSinkCtrl::drain()
|
||||
|
||||
MemSinkCtrl::MemSinkCtrlStats::MemSinkCtrlStats(Stats::Group *parent)
|
||||
: Stats::Group(parent),
|
||||
ADD_STAT(numReadRetries, Stats::Units::Count::get(),
|
||||
ADD_STAT(numReadRetries, Stats::units::Count::get(),
|
||||
"Number of read retries"),
|
||||
ADD_STAT(numWriteRetries, Stats::Units::Count::get(),
|
||||
ADD_STAT(numWriteRetries, Stats::units::Count::get(),
|
||||
"Number of write retries")
|
||||
{
|
||||
}
|
||||
|
||||
@@ -389,20 +389,20 @@ SnoopFilter::updateResponse(const Packet* cpkt, const ResponsePort&
|
||||
|
||||
SnoopFilter::SnoopFilterStats::SnoopFilterStats(Stats::Group *parent)
|
||||
: Stats::Group(parent),
|
||||
ADD_STAT(totRequests, Stats::Units::Count::get(),
|
||||
ADD_STAT(totRequests, Stats::units::Count::get(),
|
||||
"Total number of requests made to the snoop filter."),
|
||||
ADD_STAT(hitSingleRequests, Stats::Units::Count::get(),
|
||||
ADD_STAT(hitSingleRequests, Stats::units::Count::get(),
|
||||
"Number of requests hitting in the snoop filter with a single "
|
||||
"holder of the requested data."),
|
||||
ADD_STAT(hitMultiRequests, Stats::Units::Count::get(),
|
||||
ADD_STAT(hitMultiRequests, Stats::units::Count::get(),
|
||||
"Number of requests hitting in the snoop filter with multiple "
|
||||
"(>1) holders of the requested data."),
|
||||
ADD_STAT(totSnoops, Stats::Units::Count::get(),
|
||||
ADD_STAT(totSnoops, Stats::units::Count::get(),
|
||||
"Total number of snoops made to the snoop filter."),
|
||||
ADD_STAT(hitSingleSnoops, Stats::Units::Count::get(),
|
||||
ADD_STAT(hitSingleSnoops, Stats::units::Count::get(),
|
||||
"Number of snoops hitting in the snoop filter with a single "
|
||||
"holder of the requested data."),
|
||||
ADD_STAT(hitMultiSnoops, Stats::Units::Count::get(),
|
||||
ADD_STAT(hitMultiSnoops, Stats::units::Count::get(),
|
||||
"Number of snoops hitting in the snoop filter with multiple "
|
||||
"(>1) holders of the requested data.")
|
||||
{}
|
||||
|
||||
@@ -63,11 +63,11 @@ BaseXBar::BaseXBar(const BaseXBarParams &p)
|
||||
gotAllAddrRanges(false), defaultPortID(InvalidPortID),
|
||||
useDefaultRange(p.use_default_range),
|
||||
|
||||
ADD_STAT(transDist, Stats::Units::Count::get(),
|
||||
ADD_STAT(transDist, Stats::units::Count::get(),
|
||||
"Transaction distribution"),
|
||||
ADD_STAT(pktCount, Stats::Units::Count::get(),
|
||||
ADD_STAT(pktCount, Stats::units::Count::get(),
|
||||
"Packet count per connected requestor and responder"),
|
||||
ADD_STAT(pktSize, Stats::Units::Byte::get(),
|
||||
ADD_STAT(pktSize, Stats::units::Byte::get(),
|
||||
"Cumulative packet size per connected requestor and responder")
|
||||
{
|
||||
}
|
||||
@@ -142,8 +142,8 @@ BaseXBar::Layer<SrcType, DstType>::Layer(DstType& _port, BaseXBar& _xbar,
|
||||
Stats::Group(&_xbar, _name.c_str()),
|
||||
port(_port), xbar(_xbar), _name(xbar.name() + "." + _name), state(IDLE),
|
||||
waitingForPeer(NULL), releaseEvent([this]{ releaseLayer(); }, name()),
|
||||
ADD_STAT(occupancy, Stats::Units::Tick::get(), "Layer occupancy (ticks)"),
|
||||
ADD_STAT(utilization, Stats::Units::Ratio::get(), "Layer utilization")
|
||||
ADD_STAT(occupancy, Stats::units::Tick::get(), "Layer occupancy (ticks)"),
|
||||
ADD_STAT(utilization, Stats::units::Ratio::get(), "Layer utilization")
|
||||
{
|
||||
occupancy
|
||||
.flags(Stats::nozero);
|
||||
|
||||
Reference in New Issue
Block a user