Finding a needle in the haystack - Debugging performance issues
summary
Starts with measurable baselines, then drills into concrete findings: a Ruby 3 upgrade coincides with a 2x–3x slowdown and heap growth from ~7M to ~9M, profiling shows 63% of time in GC, and root cause is a library change that causes double compression in cache (mcash) leading to extra marshaling and mem pressure. Tools used are exact: RBSpy/StackProf statistical profiles, thread profilers, GDB snapshots and benchmark scripts to validate fixes.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 1:05Talk overview
- 6:51Measuring performance
- 8:41Profiling and benchmarking
- 12:57Profiling tools
- 18:41Tracers and use cases
- 20:07Debugging mindset
- 21:10Stuck async worker
- 23:21Slow Rails boot
- 25:07Performance regression
- 34:28Key takeaways








