Paul Krill
Editor at Large

Chrome’s V8 JavaScript engine gets a tuneup

news
Sep 12, 20162 mins

The V8 team and Russian developers offer memory and coding enhancements for the browser engine

V8, the JavaScript engine featured in Google’s Chrome browser, is getting improvements in performance and code optimization courtesy of both the V8 team and the Russia Academy of Sciences.

For its part, the V8 team has released version 5.4, a new branch of the engine. “V8 5.4 delivers a number of key improvements in memory footprint and startup speed,” the team said in a bulletin. “These primarily help accelerate initial script execution and reduce page load in Chrome.”

The 5.4 release tunes the V8 garbage collector for devices with 512MB of RAM or less, reducing peak consumption of on-heap memory by about 40 percent, depending on the website being displayed. Also, memory management inside the JavaScript parser is simplified to avoid unnecessary allocations, which reduces off-heap memory consumption by as much as 20 percent.

The parser’s runtime performance streamlining has been improved as well. “This streamlining, combined with other optimizations of JavaScript builtins and how accesses of properties on JavaScript objects use global inline caches, resulted in notable startup performance gains,” according to the team.

The 5.4 branch will be in a beta phase of development until it is released along with the Chrome 54 Stable browser in a few weeks.

Meanwhile, developers at the Institute for System Programming of the Russian Academy of Sciences have forked from V8 an experimental compiler, LLV8, for producing highly optimized code. LLV8 uses the LLVM compiler project’s MCJIT execution engine. “LLV8 (back end) is implemented as a patch to V8 and it cannot function without the virtual machine,” according to the project’s GitHub repo. “Although LLV8 is only a fraction of the entire patched VM, we also refer to the whole thing (our fork of V8) as LLV8.” The code base is in two repositories, LLVM fork and V8 fork.

Late last month, V8 received another enhancement, a JavaScripter interpreter dubbed Ignition. It improves script execution and reduce memory overhead, and has the potential to improve Web page-loading speeds.

Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

More from this author