¿Cómo puedo obtener perf para encontrar símbolos en mi programa?

Cuando usasperf report, No veo ningún símbolo para mi programa, en cambio obtengo una salida como esta:

$ 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  

Que es bastante poco informativo.

El programa relevante está construido con símbolos de depuración, y elsysprof La herramienta muestra los símbolos apropiados, al igual que Zoom, que creo que está usandoperf bajo el capó.

Tenga en cuenta que esto está en x86-64, por lo que el binario se compila con-fomit-frame-pointer, pero ese es el caso cuando se ejecuta bajo otras herramientas también.

Respuestas a la pregunta(8)

Su respuesta a la pregunta