Hoa Nguyen has uploaded this change for review. (
https://gem5-review.googlesource.com/c/public/gem5/+/38675 )
Change subject: base-stats: Print units to stats.txt
......................................................................
base-stats: Print units to stats.txt
Change-Id: Ia2050ac29619575e6c3b10529dd5f5c6bcc8ee97
Signed-off-by: Hoa Nguyen <hoangu...@ucdavis.edu>
---
M src/base/stats/text.cc
1 file changed, 26 insertions(+), 0 deletions(-)
diff --git a/src/base/stats/text.cc b/src/base/stats/text.cc
index fa342a2..a1ff13a 100644
--- a/src/base/stats/text.cc
+++ b/src/base/stats/text.cc
@@ -225,6 +225,7 @@
Result value;
string name;
string desc;
+ string unit;
Flags flags;
bool descriptions;
bool spaces;
@@ -233,6 +234,7 @@
Result cdf;
int nameSpaces;
int valueSpaces;
+ int unitSpaces;
int pdfstrSpaces;
int cdfstrSpaces;
@@ -240,11 +242,13 @@
if (spaces) {
nameSpaces = 40;
valueSpaces = 12;
+ unitSpaces = 15;
pdfstrSpaces = 10;
cdfstrSpaces = 10;
} else {
nameSpaces = 0;
valueSpaces = 0;
+ unitSpaces = 0;
pdfstrSpaces = 0;
cdfstrSpaces = 0;
}
@@ -284,6 +288,10 @@
ccprintf(stream, "%-*s ", nameSpaces, name);
}
ccprintf(stream, "%*s", valueSpaces, ValueToString(value, precision));
+ if (!unit.empty())
+ ccprintf(stream, " %-*s", unitSpaces, csprintf("(%s)", unit));
+ else
+ ccprintf(stream, " %-*s", unitSpaces, "");
if (spaces || pdfstr.rdbuf()->in_avail())
ccprintf(stream, " %*s", pdfstrSpaces, pdfstr.str());
if (spaces || cdfstr.rdbuf()->in_avail())
@@ -302,8 +310,10 @@
string name;
string separatorString;
string desc;
+ string unit;
vector<string> subnames;
vector<string> subdescs;
+ vector<string> subunits;
Flags flags;
bool descriptions;
bool spaces;
@@ -341,6 +351,7 @@
ScalarPrint print(spaces);
print.name = name;
print.desc = desc;
+ print.unit = unit;
print.precision = precision;
print.descriptions = descriptions;
print.flags = flags;
@@ -372,6 +383,7 @@
print.name = base + (havesub ? subnames[i] :
std::to_string(i));
print.desc = subdescs.empty() ? desc : subdescs[i];
+ print.unit = subunits.empty() ? unit : subunits[i];
print.update(vec[i], _total);
print(stream, flags.isSet(oneline));
@@ -391,6 +403,7 @@
print.cdf = NAN;
print.name = base + "total";
print.desc = desc;
+ print.unit = unit;
print.value = total;
print(stream);
}
@@ -401,6 +414,7 @@
string name;
string separatorString;
string desc;
+ string unit;
Flags flags;
bool descriptions;
bool spaces;
@@ -432,6 +446,9 @@
if (!info.subdescs[i].empty())
desc = info.subdescs[i];
+
+ //if (!info.subunits[i].empty())
+ // unit = info.subunits[i];
}
void
@@ -440,6 +457,7 @@
name = text->statName(info.name);
separatorString = info.separatorString;
desc = info.desc;
+ unit = info.unit;
flags = info.flags;
precision = info.precision;
descriptions = text->descriptions;
@@ -462,6 +480,7 @@
print.flags = flags;
print.descriptions = descriptions;
print.desc = desc;
+ print.unit = unit;
print.pdf = NAN;
print.cdf = NAN;
@@ -588,6 +607,7 @@
print.value = info.result();
print.name = statName(info.name);
print.desc = info.desc;
+ print.unit = info.unit;
print.flags = info.flags;
print.descriptions = descriptions;
print.precision = info.precision;
@@ -609,6 +629,7 @@
print.name = statName(info.name);
print.separatorString = info.separatorString;
print.desc = info.desc;
+ print.unit = info.unit;
print.flags = info.flags;
print.descriptions = descriptions;
print.precision = info.precision;
@@ -685,6 +706,7 @@
info.name + "_" +
(havesub ? info.subnames[i] : std::to_string(i)));
print.desc = info.desc;
+ print.unit = info.unit;
print.vec = yvec;
print.total = total;
print(*stream);
@@ -698,6 +720,7 @@
print.name = statName(info.name);
print.subnames = total_subname;
print.desc = info.desc;
+ print.unit = info.unit;
print.vec = VResult(1, info.total());
print.flags = print.flags & ~total;
print(*stream);
@@ -741,6 +764,7 @@
string name;
string separatorString;
string desc;
+ string unit;
Flags flags;
bool descriptions;
bool spaces;
@@ -767,6 +791,7 @@
name = text->statName(info.name);
separatorString = info.separatorString;
desc = info.desc;
+ unit = info.unit;
flags = info.flags;
precision = info.precision;
descriptions = text->descriptions;
@@ -784,6 +809,7 @@
print.flags = flags;
print.descriptions = descriptions;
print.desc = desc;
+ print.unit = unit;
print.pdf = NAN;
print.cdf = NAN;
--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/38675
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: Ia2050ac29619575e6c3b10529dd5f5c6bcc8ee97
Gerrit-Change-Number: 38675
Gerrit-PatchSet: 1
Gerrit-Owner: Hoa Nguyen <hoangu...@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