LTTng for full stack tracing
summary
Full-stack tracing using LTTng plus Qt user-space trace points and a CTF→Chrome trace converter identifies exact causes of slow startup: kernel sched switches, syscalls, plugin loads and mmap activity show that disk-heavy debug logging and loading unneeded image plugins — on an NVIDIA Tegra X1 Yocto build — cause multi-second delays; raising I/O priority and stripping plugins drops startup from ~5s to ~1s. Built a tracegen for Qt tracepoints and a CTF-to-JSON pipeline, records 20s full-system traces ~10–218 MB binary (~2 MB JSON) with negligible overhead.
AI-written summary · about
chapters (11)
- 0:00Introduction to full-stack tracing
- 2:11Motivating real-world example
- 7:57Why LTTng for tracing
- 9:43Setting up LTTng on device
- 11:10Recording a system trace
- 14:28Analyzing trace data
- 17:00CTF2: Custom trace visualization
- 20:15Key trace points explained
- 22:45Future of tracing in Qt
- 23:45Performance impact and overhead
- 24:53Q&A and conclusion
related talks
37mKernel and userspace tracing with LTTng and friends
36mLTTNG-UST Efficient System Wide User-Space Tracing
48mEfficient and Large-scale Infrastructure Monitoring With Tracing
35mLinux Tracing updates
38mLTTng: Beyond Ring-Buffer Based Tracing
12mStriaTrace: Efficient Tracing and Diagnosis for Online LLM Inference
05mPerformance analysis using Systrace
25mDebugging Slow Infrastructure Runs With OpenTelemetry in OpenTofu
