My program was running fast 6 month ago. What happend?
summary
Claim: software slows because five concrete causes—architecture, algorithms, allocators, compiler heuristics, hardware—and each has measurable fixes. Examples: chatty components and a logging mutex produce Kingman-style waits; switching allocators yields ~10–15% gains; BOLT or profile‑guided layout and link‑time optimizations cut instruction cache misses; hash‑map lookups take ~0.1s at 64 entries but exceed 1s at tens of millions; processing 20 million objects shows class size rising from 20 to ~184 bytes causes ~4–5× slowdown.
AI-written summary · about
chapters (9)
- 0:00Start
- 1:04Introduction
- 2:05Architectural Issues
- 13:27Contention example logger
- 20:14Memory Allocation
- 23:02Compiler Optimizations
- 26:07Hardware Issues
- 27:22More code more instruction cache misses
- 41:39The End
related talks
56mClean code! Horrible performance?
01h 05mPerformance Optimization in Software Development - Being Friendly to Your Hardware
01h 00m“Want fast C++? Know your hardware!"
51mDesigning for Performance
55mWho cares about speed
42mPractical Optimizations
58mOptimization Tips - Mo' Hustle Mo' Problems
01h 37mAn Overview of Program Optimization Techniques
