The text file created by the profiler in the emulator contains a number of
statistics at the end of the file; these include "cycles counted" and "total
clocks".  I have found that these two values often differ by about 10%.  Can
anyone give a precise explanation of the difference between these?  The emulator
source code shows that "total clocks" comes from the gClockCycles variables,
which is incremented each time the emulator executes an instruction or reads or
writes to memory.  "cycles counted" comes from the gCyclesCounted variables,
which is computed by adding up the "cycles plus kids" field of each call node.
The "cycles plus kids" field of function call nodes doesn't include time spent
in interrupts, but interrupt call nodes are added to gCyclesCounted when it is
computed, so gCyclesCounted apparently counts both interrupt and non-interrupt
clock cycles.  So the question remains: just why are gClockCycles and
gCyclesCounted different?

-adam


Reply via email to