2 min read

A beta version of V8 6.8 was announced by Google a few days ago. This release contains a lot of exciting new features such as better memory usage and improved performance. Let’s take a detailed look at what this release has in store for the web developers.

V8 Engine Explained

When a software is named after an 8-cylinder aircraft engine, only one thing comes to mind- Speed. V8 is an open source JavaScript Engine which was designed at the Google development center in Germany. It is used on both the browser as well as on the server side.

V8 works like a usual compiler which translates the actual code into machine code for faster execution.

Java developers or developers working with any modern programming language might be familiar with compilers. But what makes V8 stand out from any other compiler, is its ability to not produce any bytecode or intermediate code. The V8 team follows a six-week release cycle, where they come up with a beta of a new minor version followed by a stable release in the next few weeks. Let’s take a deep dive into the feature set of this new release.

Memory

The sharedFunctionInfo function or SFI, as most developers call it, holds the metadata for other functions. Usually, in function heavy-code JavaScript unnecessarily keeps these metadata functions alive, leading to a lot of memory leaks. The V8 team decided to break the dependency on SFI and reduced the actual size of the SFI itself. This approach reduces the memory consumption drastically and the V8 team is planning to further compress the size of these SFIs for optimum memory consumption.

Performance

Performance is imperative when it comes to engines, and the V8 team constantly strives to bring improvements to the engine. This helps developers to run high-performance application on V8. This time around they have introduced array destructuring for performance improvements.

  • A new implementation of Object.assign improves performance, via implementation of a fast path for JavaScript.
  • Performance for TypedArrays has been increased in instances when sorting is done using a comparison function.

WebAssembly

WebAssembly is nothing but a bytecode format which is executed in a web browser. This allows an application to be deployed to a device with a compliant web browser without going through any explicit installation steps. In V8 v6.8 provides trap-based bounds checking on Linux x64 platforms. This memory management optimization considerably improves WebAssembly’s execution speed.

You can expect the next V8 6.9 release in a couple of months with more performance improvements. Until then you can visit their official website for a detailed breakdown of all the features in V8 6.8.

Read Next

WebAssembly comes to Qt. Now you can deploy your next Qt app in browser

Implementing 5 Common Design Patterns in JavaScript (ES8)


Subscribe to the weekly Packt Hub newsletter. We'll send you the results of our AI Now Survey, featuring data and insights from across the tech landscape.

* indicates required