Eden Avivi has uploaded this change for review. ( https://gem5-review.googlesource.com/c/public/gem5/+/34137 )

Change subject: cpu: convert memtest to new style stats
......................................................................

cpu: convert memtest to new style stats

Change-Id: I91b17dd46fd0f70816159ea14c1c8f498048c696
---
M src/cpu/testers/memtest/memtest.cc
M src/cpu/testers/memtest/memtest.hh
2 files changed, 14 insertions(+), 22 deletions(-)



diff --git a/src/cpu/testers/memtest/memtest.cc b/src/cpu/testers/memtest/memtest.cc
index 720b273..b66dcae 100644
--- a/src/cpu/testers/memtest/memtest.cc
+++ b/src/cpu/testers/memtest/memtest.cc
@@ -99,7 +99,7 @@
       nextProgressMessage(p->progress_interval),
       maxLoads(p->max_loads),
       atomic(p->system->isAtomicMode()),
-      suppressFuncErrors(p->suppress_func_errors)
+      suppressFuncErrors(p->suppress_func_errors), stats(this)
 {
     id = TESTER_ALLOCATOR++;
     fatal_if(id >= blockSize, "Too many testers, only %d allowed\n",
@@ -160,7 +160,7 @@
             }

             numReads++;
-            numReadsStat++;
+            stats.numReadsStat++;

             if (numReads == (uint64_t)nextProgressMessage) {
ccprintf(cerr, "%s: completed %d read, %d write accesses @%d\n",
@@ -176,7 +176,7 @@
             // update the reference data
             referenceData[req->getPaddr()] = pkt_data[0];
             numWrites++;
-            numWritesStat++;
+            stats.numWritesStat++;
         }
     }

@@ -190,23 +190,12 @@
     else if (noResponseEvent.scheduled())
         deschedule(noResponseEvent);
 }
-
-void
-MemTest::regStats()
+MemTest::MemTestStats::MemTestStats(Stats::Group *parent)
+      : Stats::Group(parent),
+      ADD_STAT(numReadsStat, "number of read accesses completed"),
+      ADD_STAT(numWritesStat, "number of write accesses completed")
 {
-    ClockedObject::regStats();

-    using namespace Stats;
-
-    numReadsStat
-        .name(name() + ".num_reads")
-        .desc("number of read accesses completed")
-        ;
-
-    numWritesStat
-        .name(name() + ".num_writes")
-        .desc("number of write accesses completed")
-        ;
 }

 void
diff --git a/src/cpu/testers/memtest/memtest.hh b/src/cpu/testers/memtest/memtest.hh
index 86b27a4..db0c048 100644
--- a/src/cpu/testers/memtest/memtest.hh
+++ b/src/cpu/testers/memtest/memtest.hh
@@ -72,7 +72,6 @@
     typedef MemTestParams Params;
     MemTest(const Params *p);

-    void regStats() override;

     Port &getPort(const std::string &if_name,
                   PortID idx=InvalidPortID) override;
@@ -166,9 +165,13 @@
     const bool atomic;

     const bool suppressFuncErrors;
-
-    Stats::Scalar numReadsStat;
-    Stats::Scalar numWritesStat;
+  protected:
+    struct MemTestStats : public Stats::Group
+    {
+        MemTestStats(Stats::Group *parent);
+        Stats::Scalar numReadsStat;
+        Stats::Scalar numWritesStat;
+    } stats;

     /**
      * Complete a request by checking the response.

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/34137
To unsubscribe, or for help writing mail filters, visit https://gem5-review.googlesource.com/settings

Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I91b17dd46fd0f70816159ea14c1c8f498048c696
Gerrit-Change-Number: 34137
Gerrit-PatchSet: 1
Gerrit-Owner: Eden Avivi <eav...@ucdavis.edu>
Gerrit-MessageType: newchange
_______________________________________________
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to