Unlocking Performance Through Reverse Engineering
summary
Reverse engineering using Google microbenchmarks, perf performance counters and raw perfmon events uncovers concrete CPU limits: the Meteor Lake performance core sustains about 6 micro‑ops per cycle, the reorder buffer measures ~512 ROB, 192 load buffer, 114 store buffer, and the memory subsystem only overlaps ~25 outstanding cache misses. Benchmarks built with Bazel and pointer‑chasing via Sattolo’s algorithm (random cyclic permutations) validate results, and applying those numbers yields measured gains (lock/fence avoidance and scheduling) of 7–11% and up to ~23% in some workloads.
AI-written summary · about
chapters (10)
- 0:00Reverse engineering CPUs
- 1:02CPU core and benchmark setup
- 10:22CPU speed with microbenchmarks
- 20:46Micro-ops and throughput
- 23:19Out-of-order execution and reorder buffer
- 33:02Reorder buffer size
- 48:09Memory hierarchy and buffers
- 53:06Cache miss handling
- 57:37Advanced reverse engineering techniques
- 1:00:29Practical applications and impact
related talks
01h 01mGoing Nowhere Faster
56mWrite Fast Code Like a Native
01h 50mUnlocking Modern CPU Power - Next-Gen C++ Optimization Techniques
51mTutorial: Performance Tools
37mCausal's 1000x Spreadsheet; Performance beyond profiling
23mBeating the Benchmarks: Co-evolving the ISA and Development Tools
51mDesigning for Performance
41mAdvanced Napkin Math: Estimating System Performance from First Principles
