Overview
News
Salaries
Products
People
Growth
Offices
Financials

Overview

V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.

News

Blog 1 year ago
How we made JSON.stringify more than twice as fast
JSON.stringify is a core JavaScript function for serializing data. Its performance directly affects common operations across the web, from serializing data for a network request to saving data to localStorage . A faster JSON.stringify translates to quicke
Read more
Report
Blog 1 year ago
Speculative Optimizations for WebAssembly using Deopts and Inlining
In this blog post, we explain two optimizations for WebAssembly that we recently implemented in V8 and that shipped with Google Chrome M137, namely speculative call_indirect inlining and deoptimization support for WebAssembly. In combination, they allow u
Read more
Report
Blog 1 year ago
JavaScript's New Superpower: Explicit Resource Management
The Explicit Resource Management proposal introduces a deterministic approach to explicitly manage the lifecycle of resources like file handles, network connections, and more. This proposal brings the following additions to the language: the using and awa
Read more
Report
Blog 1 year ago
Giving V8 a Heads-Up: Faster JavaScript Startup with Explicit Compile Hints
Getting JavaScript running fast is key for a responsive web app. Even with V8's advanced optimizations, parsing and compiling critical JavaScript during startup can still create performance bottlenecks. Knowing which JavaScript functions to compile during
Read more
Report
Blog 1 year ago
Land ahoy: leaving the Sea of Nodes
V8's end-tier optimizing compiler, Turbofan, is famously one of the few large-scale production compilers to use Sea of Nodes (SoN). However, since almost 3 years ago, we've started to get rid of Sea of Nodes and fall back to a more traditional Control-Flo
Read more
Report
Blog 1 year ago
Turbocharging V8 with mutable heap numbers
At V8, we're constantly striving to improve JavaScript performance. As part of this effort, we recently revisited the JetStream2 benchmark suite to eliminate performance cliffs. This post details a specific optimization we made that yielded a significant
Read more
Report
Blog 2 years ago
Introducing the WebAssembly JavaScript Promise Integration API
The JavaScript Promise Integration (JSPI) API allows WebAssembly applications that were written assuming synchronous access to external functionality to operate smoothly in an environment where the functionality is actually asynchronous . This note outlin
Read more
Report
Blog 2 years ago
WebAssembly JSPI has a new API
WebAssembly's JavaScript Promise Integration (JSPI) API has a new API, available in Chrome release M126. We talk about what has changed, how to use it with Emscripten, and what is the roadmap for JSPI. JSPI is an API that allows WebAssembly applications t
Read more
Report
Blog 2 years ago
The V8 Sandbox
After almost three years since the initial design document and hundreds of CLs in the meantime, the V8 Sandbox - a lightweight, in-process sandbox for V8 - has now progressed to the point where it is no longer considered an experimental security feature.
Read more
Report
Blog 2 years ago
Iterator helpers
Iterator helpers are a collection of new methods on Iterator prototype that help in general use of iterators. Since these helper methods are on the iterator prototype, any object that has Iterator.prototype on its prototype chain (e.g. array iterators) wi
Read more
Report
Show more news