Leveraging Compiler Code Instrumentation for Zephyr Tracing &...
summary
A platform, tooling and arch‑neutral subsystem uses -finstrumentation-functions in GCC/Clang to capture function entry/exit addresses and timestamps, records events into a retained RAM ring buffer with runtime trigger/stop addresses that survive reboot, and exports traces via Babeltrace to Perfetto for flamegraphs. Image size more than doubles because inlining is disabled on GCC, profiling accumulators and call counts are produced and the synchronous demo works though async transport is still experimental.
AI-written summary · about
chapters (8)
- 0:00Introduction to tracing
- 3:30Motivation and methodology
- 8:20Implementation details
- 13:22Configuring trace points
- 18:30Setting up the environment
- 22:38Data extraction and analysis
- 31:26Performance impact
- 34:48Dynamic instrumentation
related talks
53mOptimizing C for Microcontrollers - Best Practices
02h 00mAdvanced Debug and Trace Tools for RISC-V Architectures
57mZephyr RTOS Debugging and Performance Analysis
32mFuzzing Zephyr Apps - Struggles of Dynamic Analysis on Embedded Applications
32mApplied static firmware analysis in a CI environment for increased safety and code review insights
27mZephyr Porting Efforts in High Performance SoCs
40mOptimizing Zephyr for Peak Performance
47mSponsored Session: Does Zephyr Scare the Bare Metal Embedded Developer World?
