changeset 12431dc9a30a in /z/repo/m5
details: http://repo.m5sim.org/m5?cmd=changeset;node=12431dc9a30a
description:
        stats: Try to make the names of things more intuitive.
        Basically, this means renaming several things called data to info, which
        is information about the statistics.  Things that are named data now are
        actual data stored for the statistic.

diffstat:

9 files changed, 424 insertions(+), 410 deletions(-)
src/base/statistics.cc   |   78 ++++++-------
src/base/statistics.hh   |  263 ++++++++++++++++++++++++----------------------
src/base/stats/mysql.cc  |  211 ++++++++++++++++++------------------
src/base/stats/mysql.hh  |   42 +++----
src/base/stats/statdb.cc |    6 -
src/base/stats/statdb.hh |   10 -
src/base/stats/text.cc   |  182 ++++++++++++++++---------------
src/base/stats/text.hh   |   14 +-
src/base/stats/visit.hh  |   28 ++--

diffs (truncated from 1988 to 300 lines):

diff -r 1db89432381b -r 12431dc9a30a src/base/statistics.cc
--- a/src/base/statistics.cc    Mon Feb 23 12:04:52 2009 -0800
+++ b/src/base/statistics.cc    Mon Feb 23 12:22:15 2009 -0800
@@ -48,65 +48,59 @@
 
 namespace Stats {
 
-StatData *
-DataAccess::find() const
+Info *
+InfoAccess::find() const
 {
     return Database::find(const_cast<void *>((const void *)this));
 }
 
-const StatData *
-getStatData(const void *stat)
+const Info *
+getInfo(const void *stat)
 {
     return Database::find(const_cast<void *>(stat));
 }
 
 void
-DataAccess::map(StatData *data)
+InfoAccess::setInfo(Info *info)
 {
-    Database::regStat(this, data);
-}
-
-StatData *
-DataAccess::statData()
-{
-    StatData *ptr = find();
-    assert(ptr);
-    return ptr;
-}
-
-const StatData *
-DataAccess::statData() const
-{
-    const StatData *ptr = find();
-    assert(ptr);
-    return ptr;
+    Database::regStat(this, info);
 }
 
 void
-DataAccess::setInit()
+InfoAccess::setInit()
 {
-    statData()->flags |= init;
+    info()->flags |= init;
 }
 
-void
-DataAccess::setPrint()
+Info *
+InfoAccess::info()
 {
-    Database::regPrint(this);
+    Info *info = find();
+    assert(info);
+    return info;
 }
 
-StatData::StatData()
+const Info *
+InfoAccess::info() const
+{
+    const Info *info = find();
+    assert(info);
+    return info;
+}
+
+Info::Info()
     : flags(none), precision(-1), prereq(0)
 {
     static int count = 0;
     id = count++;
 }
 
-StatData::~StatData()
+Info::~Info()
 {
 }
 
 bool
-StatData::less(StatData *stat1, StatData *stat2)
+Info::less(Info *stat1, Info *stat2)
 {
     const string &name1 = stat1->name;
     const string &name2 = stat2->name;
@@ -132,7 +126,7 @@
 }
 
 bool
-StatData::baseCheck() const
+Info::baseCheck() const
 {
     if (!(flags & init)) {
 #ifdef DEBUG
@@ -190,7 +184,7 @@
 }
 
 void
-FormulaBase::update(StatData *)
+FormulaBase::update(Info *)
 {
 }
 
@@ -238,20 +232,20 @@
 
     iter_t i, end = Database::stats().end();
     for (i = Database::stats().begin(); i != end; ++i) {
-        StatData *data = *i;
-        assert(data);
-        if (!data->check() || !data->baseCheck())
-            panic("stat check failed for %s\n", data->name);
+        Info *info = *i;
+        assert(info);
+        if (!info->check() || !info->baseCheck())
+            panic("stat check failed for %s\n", info->name);
     }
 
     off_t j = 0;
     for (i = Database::stats().begin(); i != end; ++i) {
-        StatData *data = *i;
-        if (!(data->flags & print))
-            data->name = "__Stat" + to_string(j++);
+        Info *info = *i;
+        if (!(info->flags & print))
+            info->name = "__Stat" + to_string(j++);
     }
 
-    Database::stats().sort(StatData::less);
+    Database::stats().sort(Info::less);
 
     if (i == end)
         return;
@@ -275,8 +269,8 @@
     Database::stat_list_t::iterator i = Database::stats().begin();
     Database::stat_list_t::iterator end = Database::stats().end();
     while (i != end) {
-        StatData *data = *i;
-        data->reset();
+        Info *info = *i;
+        info->reset();
         ++i;
     }
 
diff -r 1db89432381b -r 12431dc9a30a src/base/statistics.hh
--- a/src/base/statistics.hh    Mon Feb 23 12:04:52 2009 -0800
+++ b/src/base/statistics.hh    Mon Feb 23 12:22:15 2009 -0800
@@ -26,7 +26,6 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  * Authors: Nathan Binkert
- *          Erik Hallnor
  */
 
 /** @file
@@ -60,6 +59,7 @@
 #include <string>
 #include <vector>
 
+#include "base/cast.hh"
 #include "base/cprintf.hh"
 #include "base/intmath.hh"
 #include "base/refcnt.hh"
@@ -85,8 +85,9 @@
 // Statistics Framework Base classes
 //
 //////////////////////////////////////////////////////////////////////
-struct StatData
+class Info
 {
+  public:
     /** The name of the stat. */
     std::string name;
     /** The description of the stat. */
@@ -96,15 +97,16 @@
     /** The display precision. */
     int precision;
     /** A pointer to a prerequisite Stat. */
-    const StatData *prereq;
+    const Info *prereq;
     /**
      * A unique stat ID for each stat in the simulator.
      * Can be used externally for lookups as well as for debugging.
      */
     int id;
 
-    StatData();
-    virtual ~StatData();
+  public:
+    Info();
+    virtual ~Info();
 
     /**
      * Reset the corresponding stat to the default state.
@@ -138,10 +140,10 @@
      * @param stat2 The second stat.
      * @return stat1's name is alphabetically before stat2's
      */
-    static bool less(StatData *stat1, StatData *stat2);
+    static bool less(Info *stat1, Info *stat2);
 };
 
-class ScalarData : public StatData
+class ScalarInfoBase : public Info
 {
   public:
     virtual Counter value() const = 0;
@@ -151,13 +153,13 @@
 };
 
 template <class Stat>
-class ScalarStatData : public ScalarData
+class ScalarInfo : public ScalarInfoBase
 {
   protected:
     Stat &s;
 
   public:
-    ScalarStatData(Stat &stat) : s(stat) {}
+    ScalarInfo(Stat &stat) : s(stat) {}
 
     virtual bool check() const { return s.check(); }
     virtual Counter value() const { return s.value(); }
@@ -167,12 +169,14 @@
     virtual bool zero() const { return s.zero(); }
 };
 
-struct VectorData : public StatData
+class VectorInfoBase : public Info
 {
+  public:
     /** Names and descriptions of subfields. */
     mutable std::vector<std::string> subnames;
     mutable std::vector<std::string> subdescs;
 
+  public:
     virtual size_type size() const  = 0;
     virtual const VCounter &value() const = 0;
     virtual const VResult &result() const = 0;
@@ -193,7 +197,7 @@
 };
 
 template <class Stat>
-class VectorStatData : public VectorData
+class VectorInfo : public VectorInfoBase
 {
   protected:
     Stat &s;
@@ -201,7 +205,7 @@
     mutable VResult rvec;
 
   public:
-    VectorStatData(Stat &stat) : s(stat) {}
+    VectorInfo(Stat &stat) : s(stat) {}
 
     virtual bool check() const { return s.check(); }
     virtual bool zero() const { return s.zero(); }
@@ -234,7 +238,7 @@
     }
 };
 
-struct DistDataData
+struct DistData
 {
     Counter min_val;
     Counter max_val;
@@ -252,20 +256,21 @@
     bool fancy;
 };
 
-struct DistData : public StatData
+class DistInfoBase : public Info
 {
+  public:
     /** Local storage for the entry values, used for printing. */
-    DistDataData data;
+    DistData data;
 };
 
 template <class Stat>
-class DistStatData : public DistData
+class DistInfo : public DistInfoBase
 {
   protected:
     Stat &s;
 
   public:
-    DistStatData(Stat &stat) : s(stat) {}
+    DistInfo(Stat &stat) : s(stat) {}
 
     virtual bool check() const { return s.check(); }
     virtual void reset() { s.reset(); }
@@ -279,17 +284,20 @@
_______________________________________________
m5-dev mailing list
m5-dev@m5sim.org
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to