Jak mogę znaleźć perfekcję, aby znaleźć symbole w moim programie
Podczas używaniaperf report
, Nie widzę żadnych symboli dla mojego programu, zamiast tego otrzymuję dane wyjściowe w ten sposób:
$ perf record /path/to/racket ints.rkt 10000
$ perf report --stdio
# Overhead Command Shared Object Symbol
# ........ ........ ................. ......
#
70.06% ints.rkt [unknown] [.] 0x5f99b8
26.28% ints.rkt [kernel.kallsyms] [k] 0xffffffff8103d0ca
3.66% ints.rkt perf-32046.map [.] 0x7f1d9be46650
Co jest dość niedoinformowane.
Odpowiedni program jest zbudowany z symboli debugowania isysprof
narzędzie pokazuje odpowiednie symbole, podobnie jak Zoom, który moim zdaniem jest używanyperf
pod maską.
Zauważ, że jest to x86-64, więc plik binarny jest kompilowany-fomit-frame-pointer
, ale tak jest w przypadku innych narzędzi.