Blazing Performance with Flame Graphs
summary
A compact workflow: sample stacks with perf or DTrace, run stackcollapse.pl, and generate an interactive SVG with flamegraph.pl so you can read which functions burn CPU and why. Real results include a 40% win from focusing optimization, a grep/LANG fix that yields 2000x improvement, and finding ZFS IO throttling and a missing -O3 compiler optimization as root causes. Extensions show memory, I/O, off‑CPU and wakeup chain visualizations for multi‑node and language runtimes.
AI-written summary · about
chapters (32)
- 0:00Introduction to flame graphs
- 1:43Methodology and speaker
- 4:20Case study: SQL performance
- 7:28Flame graph visualization
- 10:37Understanding stack traces
- 13:49Code activity analysis
- 16:18Creating the visualization
- 19:16Defining flame graphs
- 21:25Interpreting the graphs
- 24:26Analyzing code branches
- 26:56Log checking example
- 30:10Kernel IO analysis
- 33:27Compiler optimizations
- 37:06Generating flame graphs
- 40:01Profiling tools integration
- 42:25Dynamic language tracing
- 44:55Output customization
- 46:47CPU flame graphs
- 50:35Kernel internals example
- 52:19System call towers
- 55:10Stacking user and kernel
- 55:52Advanced flame graphs
- 58:35Memory allocation analysis
- 1:01:06Memory leak detection
- 1:03:34Page fault profiling
- 1:05:44IO latency analysis
- 1:08:40Logical IO example
- 1:11:53Off-CPU profiling
- 1:15:53Hot-cold flame graphs
- 1:18:44Wakeup latency tracing
- 1:21:49Wakeup chain visualization
- 1:24:50Flame graph ecosystem
related talks
50mVisualizing Performance - The Developers’ Guide to Flame Graphs
49mWorkshop: How to use flamegraphs to find performance problems
38mExtending the Performance Analyis Toolset
25mFrom Continuous Profiling to Continuous Optimization
25mAllegro.pl in flames
48mFantastic Performance and Where to Find It
01h 01mDebugging and Profiling .NET Core Apps on Linux
32mProfiling at the speed of light
