All my favorite tracing tools: eBPF, QEMU, Perfetto, new ones I built and more - Tristan Hume
Ever wanted more different ways to understand what’s going on in a program? Here I catalogue a huge variety of tracing methods you can use for varying types of problems. Tracing has been such a long-standing interest (and job) of mine that some of these will novel and interesting to anyone who reads this. I’ll guarantee it by including 2 novel tracing tools I’ve made and haven’t shared before (look for this: Tooling drop!). What I see as the key parts of tracing are collecting timestamped data on what happened in a system, and then ideally visualizing it in a timeline UI instead of just as a text log. First I’ll cover my favorite ways of really easily getting trace data into a nice timeline UI, because it’s a superpower that makes all the other tracing tools more interesting. Then I’ll go over ways to get that data, everything from instrumentation to binary patching to processor hardware features. I’ll also give a real-life example of combining eBPF tracing with Perfetto visualization
All my favorite tracing tools: eBPF, QEMU, Perfetto, new ones I built and more - Tristan Hume Tristan Hume Github Resume + Project List Blog All my favorite tracing tools: eBPF, QEMU, Perfetto, new ones I built and more --> Ever wanted more different ways to understand what’s going on in a program? Here I catalogue a huge variety of tracing methods you can use for varying types of problems. Tracing has been such a long-standing interest (and job) of mine that some of these will novel and interesting to anyone who reads this. I’ll guarantee it by including 2 novel tracing tools I’ve made and ha
Explore this link on the map →saved by
related reading
- Tristan's Site - Tristan Humethume.ca
- Diagnostics - The Go Programming Languagego.dev
- abseil / Performance Hintsabseil.io
- PERF tutorial: Finding execution hot spots - Sand, software and soundSand, software and soundsandsoftwaresound.net
- Frame pointers vs DWARF – my verdict | Richard WM Jonesrwmj.wordpress.com
- Analyzing performance with perf annotatedeveloper.ibm.com
- Go execution tracer | Gopher Academy Blogblog.gopheracademy.com
- perf-config(1) - Linux manual pageman7.org
- The Problem with OpenTelemetrycra.mr
- PERF tutorial: Counting hardware performance events - Sand, software and soundSand, software and soundsandsoftwaresound.net
- ⏱️ Performance Profiling - Composerdocs.mosaicml.com
- Tracing: structured logging, but better in every way | Andy Doteandydote.co.uk