RPL Debugging, Profiler Panel
The Profiler Panel times the execution of various RPL
commands. The Profiler does this by monitoring the Return Stack and
tracking the amount of time between a call and its return. The Profiler
can time a single command or provide a full and complete cross section of all
the RPL commands used by a program.
Running the
Profiler
Place a breakpoint in your code at a good starting position for
the timing work. Normally you would want to get your program started
before initiating the timing to avoid including system overhead time.
However, the Profiler can be turned on any time! Begin accumulating
time information by placing a check mark in the Profiler check box.
This clears any values and begins counting the time.
Do not worry about breakpoints, time spent while the EMU is halted will not count.
Stopping the Profiler
Have a second breakpoint in the code for the stop mark for
timing. When the second breakpoint is reached (or at any point you like),
uncheck the Profiler check box. This will stop time accumulation
and produce a report similar to what is shown above.
Profiler Report
The Profiler report shows the name of the RPL verb, total
time spent in executing that verb (i.e. the sum of the time for all calls) and
the number of times that verb was called. Many entry points in the ROM are
not supported, so no name is shown for these items. An address is shown
when a name is not known. The address is a
complete ROM address including a leading 1, the ROM page, and then a five
digit hex address.
.