stats: fancy is a bad name
authorNathan Binkert <nate@binkert.org>
Wed, 13 May 2009 14:18:02 +0000 (07:18 -0700)
committerNathan Binkert <nate@binkert.org>
Wed, 13 May 2009 14:18:02 +0000 (07:18 -0700)
src/base/statistics.hh
src/base/stats/info.hh
src/base/stats/mysql.cc
src/base/stats/text.cc

index 52caa48fa355ba36beca6fd9aae7c5b7b99b70e0..c74ac6577fe284d0cb308bf1996a943a698aa0a9 100644 (file)
@@ -1271,7 +1271,7 @@ class DistStor
     /** The parameters for a distribution stat. */
     struct Params : public DistParams
     {
-        Params() : DistParams(false) {}
+        Params() : DistParams(Dist) {}
     };
 
   private:
@@ -1405,12 +1405,12 @@ class DistStor
  * Templatized storage and interface for a distribution that calculates mean
  * and variance.
  */
-class FancyStor
+class SampleStor
 {
   public:
     struct Params : public DistParams
     {
-        Params() : DistParams(true) {}
+        Params() : DistParams(Deviation) {}
     };
 
   private:
@@ -1425,7 +1425,7 @@ class FancyStor
     /**
      * Create and initialize this storage.
      */
-    FancyStor(Info *info)
+    SampleStor(Info *info)
         : sum(Counter()), squares(Counter()), samples(Counter())
     { }
 
@@ -1481,12 +1481,12 @@ class FancyStor
  * Templatized storage for distribution that calculates per tick mean and
  * variance.
  */
-class AvgFancy
+class AvgSampleStor
 {
   public:
     struct Params : public DistParams
     {
-        Params() : DistParams(true) {}
+        Params() : DistParams(Deviation) {}
     };
 
   private:
@@ -1499,7 +1499,7 @@ class AvgFancy
     /**
      * Create and initialize this storage.
      */
-    AvgFancy(Info *info)
+    AvgSampleStor(Info *info)
         : sum(Counter()), squares(Counter())
     {}
 
@@ -2273,9 +2273,9 @@ class Distribution : public DistBase<Distribution, DistStor>
 
 /**
  * Calculates the mean and variance of all the samples.
- * @sa Stat, DistBase, FancyStor
+ * @sa DistBase, SampleStor
  */
-class StandardDeviation : public DistBase<StandardDeviation, FancyStor>
+class StandardDeviation : public DistBase<StandardDeviation, SampleStor>
 {
   public:
     /**
@@ -2289,9 +2289,9 @@ class StandardDeviation : public DistBase<StandardDeviation, FancyStor>
 
 /**
  * Calculates the per tick mean and variance of the samples.
- * @sa Stat, DistBase, AvgFancy
+ * @sa DistBase, AvgSampleStor
  */
-class AverageDeviation : public DistBase<AverageDeviation, AvgFancy>
+class AverageDeviation : public DistBase<AverageDeviation, AvgSampleStor>
 {
   public:
     /**
@@ -2305,7 +2305,7 @@ class AverageDeviation : public DistBase<AverageDeviation, AvgFancy>
 
 /**
  * A vector of distributions.
- * @sa Stat, VectorDistBase, DistStor
+ * @sa VectorDistBase, DistStor
  */
 class VectorDistribution : public VectorDistBase<VectorDistribution, DistStor>
 {
@@ -2334,10 +2334,10 @@ class VectorDistribution : public VectorDistBase<VectorDistribution, DistStor>
 
 /**
  * This is a vector of StandardDeviation stats.
- * @sa Stat, VectorDistBase, FancyStor
+ * @sa VectorDistBase, SampleStor
  */
 class VectorStandardDeviation
-    : public VectorDistBase<VectorStandardDeviation, FancyStor>
+    : public VectorDistBase<VectorStandardDeviation, SampleStor>
 {
   public:
     /**
@@ -2355,10 +2355,10 @@ class VectorStandardDeviation
 
 /**
  * This is a vector of AverageDeviation stats.
- * @sa Stat, VectorDistBase, AvgFancy
+ * @sa VectorDistBase, AvgSampleStor
  */
 class VectorAverageDeviation
-    : public VectorDistBase<VectorAverageDeviation, AvgFancy>
+    : public VectorDistBase<VectorAverageDeviation, AvgSampleStor>
 {
   public:
     /**
index e56445f94cbdf2d3f89c16774df2e2da4ee692a3..85a0df4473bb1a72e7473b86c4fa8a354b41adce 100644 (file)
@@ -180,9 +180,11 @@ struct DistData
     Counter samples;
 };
 
+enum DistType { Deviation, Dist };
+
 struct DistParams : public StorageParams
 {
-    const bool fancy;
+    const DistType type;
 
     /** The minimum value to track. */
     Counter min;
@@ -193,7 +195,7 @@ struct DistParams : public StorageParams
     /** The number of buckets. Equal to (max-min)/bucket_size. */
     size_type buckets;
 
-    explicit DistParams(bool f) : fancy(f) {}
+    explicit DistParams(DistType t) : type(t) {}
 };
 
 class DistInfo : public Info
index 605075009de434d94bf5e7e7c04038e2eee81ddd..d14904fb0ca25dc6f957a34dfa4726b6e73e3fe1 100644 (file)
@@ -585,7 +585,7 @@ MySql::configure(const DistInfo &info)
 
     const DistParams *params =
         safe_cast<const DistParams *>(info.storageParams);
-    if (!params->fancy) {
+    if (params->type == Dist) {
         stat.size = params->buckets;
         stat.min = params->min;
         stat.max = params->max;
@@ -602,7 +602,7 @@ MySql::configure(const VectorDistInfo &info)
 
     const DistParams *params =
         safe_cast<const DistParams *>(info.storageParams);
-    if (!params->fancy) {
+    if (params->type == Dist) {
         stat.size = params->buckets;
         stat.min = params->min;
         stat.max = params->max;
@@ -789,7 +789,7 @@ MySql::output(const DistData &data, const DistParams *params)
     newdata.data = data.samples;
     newdata.insert();
 
-    if (data.samples && !params->fancy) {
+    if (data.samples && params->type == Dist) {
         newdata.x = db_min_val;
         newdata.data = data.min_val;
         newdata.insert();
index 599653244ce997cbe93f24e0d12aebb2070f61b3..10983506f1e681bc54967c6ff13b30f56fcdaf6e 100644 (file)
@@ -310,7 +310,7 @@ struct DistPrint
     Counter max;
     Counter bucket_size;
     size_type size;
-    bool fancy;
+    DistType type;
 
     const DistData &data;
 
@@ -347,7 +347,7 @@ DistPrint::init(const Text *text, const Info &info, const DistParams *params)
     precision = info.precision;
     descriptions = text->descriptions;
 
-    fancy = params->fancy;
+    type = params->type;
     min = params->min;
     max = params->max;
     bucket_size = params->bucket_size;
@@ -383,7 +383,7 @@ DistPrint::operator()(ostream &stream) const
     print.value = stdev;
     print(stream);
 
-    if (fancy)
+    if (type == Deviation)
         return;
 
     assert(size == data.cvec.size());