numCycles is only incremented on cycles where the CPU is clocked (see
src/cpu/o3/cpu.cc: line 540).

Two things can lead to this not correlating with the number of sim_ticks.
1) Quiesce instructions ("wait for interrupt" on ARM), cause the CPU to
sleep until an interrupt or some external event occurs.
2) If the O3 CPU detects a lack of activity (say stalled for a long time on
an outstanding memory miss and nothing else is occurring in the CPU, it
goes to sleep - this is pretty rare though and usually doesn't last for
many cycles).

Hope that helps.  Basically its just the number of cycles where the CPU was
"clocked", whereas sim_ticks should correlate to wall clock time.

On Tue, Nov 11, 2014 at 4:34 AM, Christian List via gem5-users <
[email protected]> wrote:

> Hello :)
> Ive simulated some parsec benchmarks on an alpha architecture with gem5 on
> a single core (periodically dumping stats).
>
> For the execution I used the parameter --cpu-clock='2GHz'
>
> In the output stat.txt I get the following parameters:
>
> sim_seconds = 0.009517
> sim_ticks = 9517306000
> numCycles = 4540375
>
> I can see here, that sim_seconds dont correlate to numCycles cause:
>
> duration of 1 Cycle = 1 second / 2 * 10^9
> number of Cycles = sim_seconds / duration of 1 cycle
>
> When I do this by hand I get  19034000 for numCycles which is different to
> the output of gem5.
>
> I dont unterstand what I am missing :)
>
> Best regards
> Christian
>
>
>
>
>
>
> _______________________________________________
> gem5-users mailing list
> [email protected]
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
>
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to