summaryrefslogtreecommitdiff
path: root/src/cpu/inorder/resources/execution_unit.cc
diff options
context:
space:
mode:
authorKorey Sewell <ksewell@umich.edu>2010-06-23 18:18:20 -0400
committerKorey Sewell <ksewell@umich.edu>2010-06-23 18:18:20 -0400
commit9f0d8f252c2de0b9ac5654b2c35e913831eba756 (patch)
tree301422de6f4268e44780520b966450578f98193b /src/cpu/inorder/resources/execution_unit.cc
parent39ac4dce04ccf2d83a29fcd7fc698f607bf720d4 (diff)
downloadgem5-9f0d8f252c2de0b9ac5654b2c35e913831eba756.tar.xz
inorder-stats: add instruction type stats
also, remove inst-req stats as default.good for debugging but in terms of pure processor stats they aren't useful
Diffstat (limited to 'src/cpu/inorder/resources/execution_unit.cc')
-rw-r--r--src/cpu/inorder/resources/execution_unit.cc14
1 files changed, 5 insertions, 9 deletions
diff --git a/src/cpu/inorder/resources/execution_unit.cc b/src/cpu/inorder/resources/execution_unit.cc
index 429291231..868ebe098 100644
--- a/src/cpu/inorder/resources/execution_unit.cc
+++ b/src/cpu/inorder/resources/execution_unit.cc
@@ -56,14 +56,9 @@ ExecutionUnit::regStats()
lastExecuteCycle = curTick;
- cyclesExecuted
- .name(name() + ".cyclesExecuted")
- .desc("Number of Cycles Execution Unit was used.");
-
- utilization
- .name(name() + ".utilization")
- .desc("Utilization of Execution Unit (cycles / totalCycles).");
- utilization = cyclesExecuted / cpu->numCycles;
+ executions
+ .name(name() + ".executions")
+ .desc("Number of Instructions Executed.");
Resource::regStats();
}
@@ -88,7 +83,6 @@ ExecutionUnit::execute(int slot_num)
{
if (curTick != lastExecuteCycle) {
lastExecuteCycle = curTick;
- cyclesExecuted++;
}
@@ -97,6 +91,7 @@ ExecutionUnit::execute(int slot_num)
} else if (inst->isControl()) {
// Evaluate Branch
fault = inst->execute();
+ executions++;
inst->setExecuted();
@@ -190,6 +185,7 @@ ExecutionUnit::execute(int slot_num)
} else {
// Regular ALU instruction
fault = inst->execute();
+ executions++;
if (fault == NoFault) {
inst->setExecuted();