
GRMON3-UM
June 2019, Version 3.1.0
20
www.cobham.com/gaisler
to the DSU timer. The time is taken when the instruction completes in the last pipeline stage (write-back) of the
processor. In a mixed instruction/AHB display, AHB address and read or write value appears within brackets. The
time indicates when the transfer completed, i.e. when HREADY was asserted.
NOTE: As the AHB trace is disabled when a breakpoint is hit, AHB accesses related to instruction cache fetches
after the time of break can be missed. The command ahb force can be used enable AHB tracing even when the
processor is in debug mode.
NOTE: When switching between tracing modes with tmode the contents of the trace buffer will not be valid until
execution has been resumed and the buffer refilled.
3.4.10. Profiling
GRMON supports profiling of LEON applications when run on real hardware. The profiling function collects
(statistical) information on the amount of execution time spent in each function. Due to its non-intrusive nature,
the profiling data does not take into consideration if the current function is called from within another procedure.
Even so, it still provides useful information and can be used for application tuning.
NOTE: To increase the number of samples, use the fastest debug link available on the target system. I.a. do not
use I/O forwarding (start GRMON without the -u commandline option)
grmon3> lo v8/stanford.exe
40000000 .text 54.8kB / 54.8kB [===============>] 100%
4000DB30 .data 2.9kB / 2.9kB [===============>] 100%
Total size: 57.66kB (786.00kbit/s)
Entry point 0x40000000
Image /home/daniel/examples/v8/stanford.exe loaded
grmon3> profile on
grmon3> run
Starting
Perm Towers Queens Intmm Mm Puzzle Quick Bubble Tree FFT
CPU 0: Interrupted!
0x40003ee4: 95a0c8a4 fsubs %f3, %f4, %f10 <Fft+196>
CPU 1: Interrupted!
0x40000000: 88100000 clr %g4 <start+0>
grmon3> prof
FUNCTION SAMPLES RATIO(%)
Trial 0000000096 27.35
__window_overflow_rettseq_ret 0000000060 17.09
main 0000000051 14.52
__window_overflow_slow1 0000000026 7.40
Fft 0000000023 6.55
Insert 0000000016 4.55
Permute 0000000013 3.70
tower 0000000013 3.70
Try 0000000013 3.70
Quicksort 0000000011 3.13
Checktree 0000000007 1.99
_malloc_r 0000000005 1.42
start 0000000004 1.13
outbyte 0000000003 0.85
Towers 0000000002 0.56
__window_overflow_rettseq 0000000002 0.56
___st_pthread_mutex_lock 0000000002 0.56
_start 0000000001 0.28
Perm 0000000001 0.28
__malloc_lock 0000000001 0.28
___st_pthread_mutex_trylock 0000000001 0.28
3.4.11. Attaching to a target system without initialization
When GRMON connects to a target system, it probes the configuration and initializes memory and registers. To
determine why a target has crashed, or resume debugging without reloading the application, it might be desirable
to connect to the target without performing a (destructive) initialization. This can be done by specifying the
-
ni
switch during the start-up of GRMON. The system information print-out (info sys) will then however not be
able to display the correct memory settings. The use of the
-stack
option and the go command might also be
Содержание GRMON3
Страница 56: ...GRMON3 UM June 2019 Version 3 1 0 56 www cobham com gaisler...
Страница 114: ...GRMON3 UM June 2019 Version 3 1 0 114 www cobham com gaisler...
Страница 123: ...GRMON3 UM June 2019 Version 3 1 0 123 www cobham com gaisler dcache...
Страница 156: ...GRMON3 UM June 2019 Version 3 1 0 156 www cobham com gaisler SEE ALSO Section 6 13 On chip logic analyzer driver...
Страница 208: ...GRMON3 UM June 2019 Version 3 1 0 208 www cobham com gaisler SEE ALSO Section 3 5 Tcl integration...