When Fast is Faster Than Fastest
summary
V8 replaces heavy benchmark-driven tricks with a consistent baseline by adding Ignition and TurboFan and rewriting critical built-ins with a Code Stub Assembler. The reduce built-in moves from self‑hosted JS to CSA and back to turbofan inlining, eliminating the call overhead that made earlier runs up to five times slower. Chrome experiments (Chrome 63 CSA, Chrome 66 with inlining) show cross‑platform wins versus 45,000 lines of hand assembly across nine ports, and the change actually works.
AI-written summary · about
chapters (19)
- 0:00Start
- 0:14Daniel Clifford
- 2:29The Synthetic Benchmark Dilemma
- 3:24Synthetic Benchmark Dilemma
- 3:42Micro Benchmarks
- 4:13Octane
- 9:46Ignition Interpreter
- 10:55How Does V8 Work
- 15:40Inline Caches
- 15:50Inline Cache
- 16:47The Feedback Vector
- 22:13Equality Operator
- 22:47Polymorphic Operations
- 33:50Deferred Code
- 34:32Inline Fast Path
- 36:03Assembly Language
- 38:20Register Allocation
- 48:28Idiomatic Javascript
- 48:43Choose the Right Benchmarks
related talks
22mHigh Performance JS in V8
29mJavaScript Engines: How Do They Even?
16mJavaScript & Metaperformance
26mArchitectural Changes In New V8 versions
23mJoin the super secret V8 club & become a JavaScriptbender
31mJavaScript Compilation Techniques or "Wasn't JavaScript supposed to be slow?"
33mJavaScript: The V8 Engine optimization tips (...)
41mBenchmarking JavaScript
