committedInsts
.init(numThreads)
.name(name() + ".committedInsts")
- .desc("Number of Instructions Simulated");
+ .desc("Number of Instructions Simulated")
+ .flags(Stats::total);
committedOps
.init(numThreads)
.name(name() + ".committedOps")
- .desc("Number of Ops (including micro ops) Simulated");
-
- totalCommittedInsts
- .name(name() + ".committedInsts_total")
- .desc("Number of Instructions Simulated");
+ .desc("Number of Ops (including micro ops) Simulated")
+ .flags(Stats::total);
cpi
.name(name() + ".cpi")
.name(name() + ".cpi_total")
.desc("CPI: Total CPI of All Threads")
.precision(6);
- totalCpi = numCycles / totalCommittedInsts;
+ totalCpi = numCycles / sum(committedInsts);
ipc
.name(name() + ".ipc")
.name(name() + ".ipc_total")
.desc("IPC: Total IPC of All Threads")
.precision(6);
- totalIpc = totalCommittedInsts / numCycles;
+ totalIpc = sum(committedInsts) / numCycles;
this->fetch.regStats();
this->decode.regStats();
thread[tid]->numInst++;
thread[tid]->numInsts++;
committedInsts[tid]++;
- totalCommittedInsts++;
}
thread[tid]->numOp++;
thread[tid]->numOps++;
Stats::Vector committedInsts;
/** Stat for the number of committed ops (including micro ops) per thread. */
Stats::Vector committedOps;
- /** Stat for the total number of committed instructions. */
- Stats::Scalar totalCommittedInsts;
/** Stat for the CPI per thread. */
Stats::Formula cpi;
/** Stat for the total CPI. */