inorder: add execution unit stats
This commit is contained in:
parent
82c5a754e6
commit
002f1b8b7e
2 changed files with 22 additions and 0 deletions
|
@ -54,6 +54,17 @@ ExecutionUnit::regStats()
|
||||||
.name(name() + ".predictedNotTakenIncorrect")
|
.name(name() + ".predictedNotTakenIncorrect")
|
||||||
.desc("Number of Branches Incorrectly Predicted As Not Taken).");
|
.desc("Number of Branches Incorrectly Predicted As Not Taken).");
|
||||||
|
|
||||||
|
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;
|
||||||
|
|
||||||
Resource::regStats();
|
Resource::regStats();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -75,6 +86,12 @@ ExecutionUnit::execute(int slot_num)
|
||||||
{
|
{
|
||||||
case ExecuteInst:
|
case ExecuteInst:
|
||||||
{
|
{
|
||||||
|
if (curTick != lastExecuteCycle) {
|
||||||
|
lastExecuteCycle = curTick;
|
||||||
|
cyclesExecuted++;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if (inst->isMemRef()) {
|
if (inst->isMemRef()) {
|
||||||
panic("%s not configured to handle memory ops.\n", resName);
|
panic("%s not configured to handle memory ops.\n", resName);
|
||||||
} else if (inst->isControl()) {
|
} else if (inst->isControl()) {
|
||||||
|
|
|
@ -71,6 +71,11 @@ class ExecutionUnit : public Resource {
|
||||||
/////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////
|
||||||
Stats::Scalar predictedTakenIncorrect;
|
Stats::Scalar predictedTakenIncorrect;
|
||||||
Stats::Scalar predictedNotTakenIncorrect;
|
Stats::Scalar predictedNotTakenIncorrect;
|
||||||
|
|
||||||
|
Stats::Scalar cyclesExecuted;
|
||||||
|
Tick lastExecuteCycle;
|
||||||
|
|
||||||
|
Stats::Formula utilization;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue