The Curious Engineer

All blogs / JavaScript / TypeScript

V8

v8.dev

The V8 JavaScript engine

JavaScript / TypeScriptPerformance / optimizationCompilersWeb development

Posts
156 from 10 Jul 2015 to 4 Aug 2025
Posting
now and then
Kind
company blog
Feed
https://v8.dev/blog.atom

2025 6

  1. How we made JSON.stringify more than twice as fast
  2. Speculative Optimizations for WebAssembly using Deopts and Inlining
  3. JavaScript's New Superpower: Explicit Resource Management
  4. Giving V8 a Heads-Up: Faster JavaScript Startup with Explicit Compile Hints
  5. Land ahoy: leaving the Sea of Nodes
  6. Turbocharging V8 with mutable heap numbers

2024 6

  1. Introducing the WebAssembly JavaScript Promise Integration API
  2. WebAssembly JSPI has a new API
  3. The V8 Sandbox
  4. Iterator helpers
  5. WebAssembly JSPI is going to origin trial
  6. Static Roots: Objects with Compile-Time Constant Addresses

2023 6

  1. V8 is Faster and Safer than Ever!
  2. Maglev - V8’s Fastest Optimizing JIT
  3. A new way to bring garbage collected programming languages efficiently to WebAssembly
  4. Control-flow Integrity in V8
  5. Speeding up V8 heap snapshots
  6. WebAssembly tail calls

2022 5

  1. Pointer compression in Oilpan
  2. Discontinuing release blog posts
  3. Retrofitting temporal memory safety on C++
  4. Faster initialization of instances with new class features
  5. V8 release v9.9

2021 17

  1. Oilpan library
  2. V8 release v9.7
  3. WebAssembly Dynamic Tiering ready to try in Chrome 96
  4. V8 release v9.6
  5. V8 release v9.5
  6. V8 release v9.4
  7. V8 release v9.3
  8. V8 release v9.2
  9. Sparkplug — a non-optimizing JavaScript compiler
  10. Short builtin calls
  11. V8 release v9.1
  12. V8 release v9.0
  13. Faster releases
  14. Super fast super property access
  15. Faster JavaScript calls
  16. V8 release v8.9
  17. An additional non-backtracking RegExp engine

2020 16

  1. V8 release v8.7
  2. Indicium: V8 runtime tracer tool
  3. Slack tracking in V8
  4. V8 release v8.6
  5. V8 release v8.5
  6. V8 release v8.4
  7. High-performance garbage collection for C++
  8. Understanding the ECMAScript spec, part 4
  9. Up to 4GB of memory in WebAssembly
  10. V8 release v8.3
  11. What’s in that .wasm? Introducing: wasm-decompile
  12. Understanding the ECMAScript spec, part 3
  13. Pointer Compression in V8
  14. Understanding the ECMAScript spec, part 2
  15. V8 release v8.1
  16. Understanding the ECMAScript spec, part 1

2019 22

  1. V8 release v8.0
  2. Outside the web: standalone WebAssembly binaries using Emscripten
  3. V8 release v7.9
  4. Improving V8 regular expressions
  5. V8 release v7.8
  6. A lighter V8
  7. The story of a V8 performance cliff in React
  8. V8 release v7.7
  9. Emscripten and the LLVM WebAssembly backend
  10. The cost of JavaScript in 2019
  11. V8 release v7.6
  12. Code caching for WebAssembly developers
  13. V8 release v7.5
  14. Faster and more feature-rich internationalization APIs
  15. A year with Spectre: a V8 perspective
  16. Blazingly fast parsing, part 2: lazy parsing
  17. Code caching for JavaScript developers
  18. Blazingly fast parsing, part 1: optimizing the scanner
  19. V8 release v7.4
  20. JIT-less V8
  21. V8 release v7.3
  22. Trash talk: the Orinoco garbage collector

2018 23

  1. V8 release v7.2
  2. Speeding up spread elements
  3. Faster async functions and promises
  4. V8 release v7.1
  5. V8 release v7.0
  6. Getting things sorted in V8
  7. Improving DataView performance in V8
  8. Celebrating 10 years of V8
  9. Liftoff: a new baseline compiler for WebAssembly in V8
  10. Embedded builtins
  11. V8 release v6.9
  12. V8 release v6.8
  13. Concurrent marking in V8
  14. V8 release v6.7
  15. Adding BigInts to V8
  16. Improved code caching
  17. V8 release v6.6
  18. Background compilation
  19. Tracing from JS to the DOM and back again
  20. Lazy deserialization
  21. V8 release v6.5
  22. Optimizing hash tables: hiding the hash code
  23. Chrome welcomes Speedometer 2.0!

2017 25

  1. V8 release v6.4
  2. JavaScript code coverage
  3. Orinoco: young generation garbage collection
  4. Taming architecture complexity in V8 — the CodeStubAssembler
  5. Announcing the Web Tooling Benchmark
  6. V8 release v6.3
  7. Optimizing ES2015 proxies in V8
  8. An internship on laziness: lazy unlinking of deoptimized functions
  9. Temporarily disabling escape analysis
  10. Elements kinds in V8
  11. V8 release v6.2
  12. Fast properties in V8
  13. About that hash flooding vulnerability in Node.js…
  14. V8 release v6.1
  15. V8 release v6.0
  16. Launching Ignition and TurboFan
  17. V8 release v5.9
  18. Retiring Octane
  19. V8 release v5.8
  20. Fast for-in in V8
  21. High-performance ES2015 and beyond
  22. Help us test the future of V8!
  23. One small step for Chrome, one giant heap for V8
  24. V8 release v5.7
  25. Speeding up V8 regular expressions

2016 19

  1. How V8 measures real-world performance
  2. V8 ❤️ Node.js
  3. V8 release v5.6
  4. WebAssembly browser preview
  5. V8 release v5.5
  6. Optimizing V8 memory consumption
  7. V8 release v5.4
  8. Firing up the Ignition interpreter
  9. V8 at the BlinkOn 6 conference
  10. V8 release v5.3
  11. V8 release v5.2
  12. ES2015, ES2016, and beyond
  13. V8 release v5.1
  14. Jank Busters Part Two: Orinoco
  15. Experimental support for WebAssembly in V8
  16. V8 release v5.0
  17. RegExp lookbehind assertions
  18. V8 extras
  19. V8 release v4.9

2015 11

  1. There’s Math.random(), and then there’s Math.random()
  2. V8 release v4.8
  3. Jank Busters Part One
  4. V8 release v4.7
  5. Custom startup snapshots
  6. V8 release v4.6
  7. Getting garbage collection for free
  8. Code caching
  9. V8 release v4.5
  10. Digging into the TurboFan JIT
  11. Hello, world!