summaryrefslogtreecommitdiff
path: root/src/cpu/trace/trace_cpu.hh
diff options
context:
space:
mode:
authorRadhika Jagtap <radhika.jagtap@arm.com>2016-08-16 14:14:58 +0100
committerAndreas Sandberg <andreas.sandberg@arm.com>2017-03-16 13:52:40 +0000
commit48333e7e3f5282bd2b5505b400ad5b06d6785371 (patch)
treeee2e811cb2d94ad4771cfed2aa2f3ada13cdbfbf /src/cpu/trace/trace_cpu.hh
parente2805f825a7983fdc1cf802ad2935b89e4d7ec8f (diff)
downloadgem5-48333e7e3f5282bd2b5505b400ad5b06d6785371.tar.xz
cpu: Print progress messages in Trace CPU
This change adds the ability to print a message at intervals of committed instruction count to indicate progress in the trace replay. Change-Id: I8363502354c42bfc52936d2627986598b63a5797 Reviewed-by: Rekai Gonzalez Alberquilla <rekai.gonzalezalberquilla@arm.com> Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-on: https://gem5-review.googlesource.com/2321 Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Diffstat (limited to 'src/cpu/trace/trace_cpu.hh')
-rw-r--r--src/cpu/trace/trace_cpu.hh15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/cpu/trace/trace_cpu.hh b/src/cpu/trace/trace_cpu.hh
index 846a3e7c5..07c739c57 100644
--- a/src/cpu/trace/trace_cpu.hh
+++ b/src/cpu/trace/trace_cpu.hh
@@ -177,7 +177,7 @@ class TraceCPU : public BaseCPU
* Set the no. of ops when elastic data generator completes executing a
* node.
*/
- void updateNumOps(uint64_t rob_num) { numOps = rob_num; }
+ void updateNumOps(uint64_t rob_num);
/* Pure virtual function in BaseCPU. Do nothing. */
void wakeup(ThreadID tid = 0)
@@ -1122,6 +1122,19 @@ class TraceCPU : public BaseCPU
*/
const bool enableEarlyExit;
+ /**
+ * Interval of committed instructions specified by the user at which a
+ * progress info message is printed
+ */
+ const uint64_t progressMsgInterval;
+
+ /*
+ * The progress msg threshold is kept updated to the next multiple of the
+ * progress msg interval. As soon as the threshold is reached, an info
+ * message is printed.
+ */
+ uint64_t progressMsgThreshold;
+
Stats::Scalar numSchedDcacheEvent;
Stats::Scalar numSchedIcacheEvent;