summaryrefslogtreecommitdiff
path: root/src/mem/ruby/profiler/Profiler.hh
diff options
context:
space:
mode:
authorBrad Beckmann <Brad.Beckmann@amd.com>2010-08-20 11:46:14 -0700
committerBrad Beckmann <Brad.Beckmann@amd.com>2010-08-20 11:46:14 -0700
commitf57053473ad369d5baf4a83d17913e5af393a8a8 (patch)
tree20d71bac37f391456c1904b120b1694017c14247 /src/mem/ruby/profiler/Profiler.hh
parent8b28848321f301e6b13cab55e539f86a0e6c71ca (diff)
downloadgem5-f57053473ad369d5baf4a83d17913e5af393a8a8.tar.xz
MOESI_hammer: break down miss latency stalled cycles
This patch tracks the number of cycles a transaction is delayed at different points of the request-forward-response loop.
Diffstat (limited to 'src/mem/ruby/profiler/Profiler.hh')
-rw-r--r--src/mem/ruby/profiler/Profiler.hh24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/mem/ruby/profiler/Profiler.hh b/src/mem/ruby/profiler/Profiler.hh
index de9834f05..3a11f0596 100644
--- a/src/mem/ruby/profiler/Profiler.hh
+++ b/src/mem/ruby/profiler/Profiler.hh
@@ -138,6 +138,18 @@ class Profiler : public SimObject, public Consumer
RubyRequestType type,
const GenericMachineType respondingMach);
+ void missLatencyWcc(Time issuedTime,
+ Time initialRequestTime,
+ Time forwardRequestTime,
+ Time firstResponseTime,
+ Time completionTime);
+
+ void missLatencyDir(Time issuedTime,
+ Time initialRequestTime,
+ Time forwardRequestTime,
+ Time firstResponseTime,
+ Time completionTime);
+
void swPrefetchLatency(Time t,
CacheRequestType type,
const GenericMachineType respondingMach);
@@ -200,6 +212,18 @@ class Profiler : public SimObject, public Consumer
std::vector<Histogram> m_missLatencyHistograms;
std::vector<Histogram> m_machLatencyHistograms;
+ std::vector< std::vector<Histogram> > m_missMachLatencyHistograms;
+ Histogram m_wCCIssueToInitialRequestHistogram;
+ Histogram m_wCCInitialRequestToForwardRequestHistogram;
+ Histogram m_wCCForwardRequestToFirstResponseHistogram;
+ Histogram m_wCCFirstResponseToCompleteHistogram;
+ int64 m_wCCIncompleteTimes;
+ Histogram m_dirIssueToInitialRequestHistogram;
+ Histogram m_dirInitialRequestToForwardRequestHistogram;
+ Histogram m_dirForwardRequestToFirstResponseHistogram;
+ Histogram m_dirFirstResponseToCompleteHistogram;
+ int64 m_dirIncompleteTimes;
+
Histogram m_allMissLatencyHistogram;
Histogram m_allSWPrefetchLatencyHistogram;