Hoa Nguyen has submitted this change. ( https://gem5-review.googlesource.com/c/public/gem5/+/36515 )

Change subject: sim,stats: Update stats style for power_model and thermal_domain
......................................................................

sim,stats: Update stats style for power_model and thermal_domain

Change-Id: Ie50553c301ff5790b51057dc117568374f0cbe36
Signed-off-by: Hoa Nguyen <hoangu...@ucdavis.edu>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/36515
Tested-by: kokoro <noreply+kok...@google.com>
Reviewed-by: Daniel Carvalho <oda...@yahoo.com.br>
Reviewed-by: Andreas Sandberg <andreas.sandb...@arm.com>
Maintainer: Andreas Sandberg <andreas.sandb...@arm.com>
---
M src/sim/power/power_model.cc
M src/sim/power/power_model.hh
M src/sim/power/thermal_domain.cc
M src/sim/power/thermal_domain.hh
4 files changed, 23 insertions(+), 51 deletions(-)

Approvals:
  Andreas Sandberg: Looks good to me, approved; Looks good to me, approved
  Daniel Carvalho: Looks good to me, approved
  kokoro: Regressions pass



diff --git a/src/sim/power/power_model.cc b/src/sim/power/power_model.cc
index fa531e0..fbc67d3 100644
--- a/src/sim/power/power_model.cc
+++ b/src/sim/power/power_model.cc
@@ -44,13 +44,21 @@
 #include "sim/sub_system.hh"

 PowerModelState::PowerModelState(const Params &p)
-    : SimObject(p), _temp(0), clocked_object(NULL)
+    : SimObject(p), _temp(0), clocked_object(NULL),
+      ADD_STAT(dynamicPower, "Dynamic power for this object (Watts)"),
+      ADD_STAT(staticPower, "Static power for this object (Watts)")
 {
+    dynamicPower
+      .method(this, &PowerModelState::getDynamicPower);
+    staticPower
+      .method(this, &PowerModelState::getStaticPower);
 }

 PowerModel::PowerModel(const Params &p)
     : SimObject(p), states_pm(p.pm), subsystem(p.subsystem),
-      clocked_object(NULL), power_model_type(p.pm_type)
+      clocked_object(NULL), power_model_type(p.pm_type),
+      ADD_STAT(dynamicPower, "Dynamic power for this power state"),
+      ADD_STAT(staticPower, "Static power for this power state")
 {
     panic_if(subsystem == NULL,
"Subsystem is NULL! This is not acceptable for a PowerModel!\n");
@@ -61,6 +69,11 @@
         pms->setTemperature(p.ambient_temp);
     }

+    dynamicPower
+      .method(this, &PowerModel::getDynamicPower);
+    staticPower
+      .method(this, &PowerModel::getStaticPower);
+
 }

 void
diff --git a/src/sim/power/power_model.hh b/src/sim/power/power_model.hh
index c8625ac..e6f5431 100644
--- a/src/sim/power/power_model.hh
+++ b/src/sim/power/power_model.hh
@@ -83,30 +83,15 @@
         clocked_object = clkobj;
     }

-    void regStats() {
-        SimObject::regStats();
-
-        dynamicPower
-          .method(this, &PowerModelState::getDynamicPower)
-          .name(params().name + ".dynamic_power")
-          .desc("Dynamic power for this object (Watts)")
-        ;
-
-        staticPower
-          .method(this, &PowerModelState::getStaticPower)
-          .name(params().name + ".static_power")
-          .desc("Static power for this object (Watts)")
-        ;
-    }
-
   protected:
-    Stats::Value dynamicPower, staticPower;

     /** Current temperature */
     double _temp;

     /** The clocked object we belong to */
     ClockedObject * clocked_object;
+
+    Stats::Value dynamicPower, staticPower;
 };

 /**
@@ -136,22 +121,6 @@
      */
     double getStaticPower() const;

-    void regStats() {
-        SimObject::regStats();
-
-        dynamicPower
-          .method(this, &PowerModel::getDynamicPower)
-          .name(params().name + ".dynamic_power")
-          .desc("Dynamic power for this power state")
-        ;
-
-        staticPower
-          .method(this, &PowerModel::getStaticPower)
-          .name(params().name + ".static_power")
-          .desc("Static power for this power state")
-        ;
-    }
-
     void setClockedObject(ClockedObject *clkobj);

     virtual void regProbePoints();
@@ -176,8 +145,6 @@
         PowerModel &pm;
     };

-    Stats::Value dynamicPower, staticPower;
-
     /** Actual power models (one per power state) */
     std::vector<PowerModelState*> states_pm;

@@ -192,6 +159,8 @@

/** The type of power model - collects all power, static or dynamic only */
     Enums::PMType power_model_type;
+
+    Stats::Value dynamicPower, staticPower;
 };

 #endif
diff --git a/src/sim/power/thermal_domain.cc b/src/sim/power/thermal_domain.cc
index 0b5bedd..dabf2fe 100644
--- a/src/sim/power/thermal_domain.cc
+++ b/src/sim/power/thermal_domain.cc
@@ -50,8 +50,11 @@

 ThermalDomain::ThermalDomain(const Params &p)
     : SimObject(p), _initTemperature(p.initial_temperature),
-    node(NULL), subsystem(NULL)
+    node(NULL), subsystem(NULL),
+    ADD_STAT(currentTemp, "Temperature in centigrade degrees")
 {
+    currentTemp
+        .method(this, &ThermalDomain::currentTemperature);
 }

 double
@@ -71,18 +74,6 @@
 }

 void
-ThermalDomain::regStats()
-{
-    SimObject::regStats();
-
-    currentTemp
-        .method(this, &ThermalDomain::currentTemperature)
-        .name(params().name + ".temp")
-        .desc("Temperature in centigrate degrees")
-        ;
-}
-
-void
 ThermalDomain::emitUpdate()
 {
     ppThermalUpdate->notify(node->temp);
diff --git a/src/sim/power/thermal_domain.hh b/src/sim/power/thermal_domain.hh
index 323ba2b..421f340 100644
--- a/src/sim/power/thermal_domain.hh
+++ b/src/sim/power/thermal_domain.hh
@@ -93,7 +93,6 @@
       */
     void setSubSystem(SubSystem * ss);

-    void regStats() override;
     void serialize(CheckpointOut &cp) const override;
     void unserialize(CheckpointIn &cp) override;


--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/36515
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: Ie50553c301ff5790b51057dc117568374f0cbe36
Gerrit-Change-Number: 36515
Gerrit-PatchSet: 24
Gerrit-Owner: Hoa Nguyen <hoangu...@ucdavis.edu>
Gerrit-Reviewer: Andreas Sandberg <andreas.sandb...@arm.com>
Gerrit-Reviewer: Daniel Carvalho <oda...@yahoo.com.br>
Gerrit-Reviewer: Hoa Nguyen <hoangu...@ucdavis.edu>
Gerrit-Reviewer: kokoro <noreply+kok...@google.com>
Gerrit-MessageType: merged
_______________________________________________
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