Hi,
Looking in to code cpu.cc, I see
ipc
.name(name() + ".ipc")
.desc("IPC: Instructions Per Cycle")
.precision(6);
ipc = committedInsts / numCycles;
totalIpc
.name(name() + ".ipc_total")
.desc("IPC: Total IPC of All Threads")
.precision(6);
totalIpc = totalCommittedInsts / numCycles;
That means, in a multicore simulation the ipc_total is calculated based on
the aggregate number of instructions. For example, assume
core0: inst=500, cycle=500
core1: inst=400, cycle=500
core2: inst=600, cycle=500
core3: inst=600, cycle=500
So gem5 will report ipc_total=2100/500=4.2.Is that right?
However another approach is to take HMEAN since we are averaging of rates.
IPC_of_multicore=HMEAN(IPC_of_each_core)
So the result will be 1.02
Any idea on that?
Regards,
Mahmood
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users