You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
While profiling, make sure to run a mix ROM, IRAM, and QSPI Flash instructions
Run gprof gmon.out
GProf's program-counter samples are all messed up because the histogram doesn't have enough bins to handle the spare address space used by ESP32 chips.
Debug Logs
Expected behavior
I would like instruction-accurate profiling, so that I may know which functions and which instructions we're spending time on during a long random-sampling run. The following series of patches addresses this with upstream OpenOCD:
The text was updated successfully, but these errors were encountered:
bryghtlabs-richard
changed the title
ESP32: profiling samples are inappropriately
ESP32: profiling samples are inappropriately rounded due to limited histogram width
Jan 24, 2025
github-actionsbot
changed the title
ESP32: profiling samples are inappropriately rounded due to limited histogram width
ESP32: profiling samples are inappropriately rounded due to limited histogram width (OCD-1087)
Jan 24, 2025
@bryghtlabs-richard Sorry, just to understand. Are your upstream patches fixing the problem you described, or are you waiting for a solution on the target side ?
We have an internal task to keep all histograms on the target and sends them (via apptrace JTAG interface) to the host when user invokes special OpenOCD command. We did POC but it is not optimal in terms of RAM usage. So we will revisit it for optimization.
Development Kit
ESP32-S3-WROOM-1
Module or chip used
ESP32-S3-WROOM-1
Debug Adapter
Internal USB JTAG
OpenOCD version
v0.12.0-esp32-20240821
Operating System
Windows 11
Using an IDE ?
No
OpenOCD command line
openocd -f board/esp32s3-builtin.cfg
JTAG Clock Speed
40MHz
ESP-IDF version
v5.1.5
Problem Description
profile 10 gmon.out
gprof gmon.out
Debug Logs
Expected behavior
I would like instruction-accurate profiling, so that I may know which functions and which instructions we're spending time on during a long random-sampling run. The following series of patches addresses this with upstream OpenOCD:
Screenshots
No response
The text was updated successfully, but these errors were encountered: