|
This article is cited in 1 scientific paper (total in 1 paper)
Approaches to optimizing V8 JavaScript engine
D. Botcharnikov LLC Samsung R&D Institute Rus
Abstract:
JavaScript is one of the most popular programming languages in the world. Started as a simple scripting language for web browsers it now becomes language of choice for millions of engineers in the web, mobile and server-side development. However its interpretational nature doesn’t always provide adequate performance. To speed up execution of JavaScript programs there were developed several optimization techniques in recent years. One example of modern high-performing JavaScript engine is a V8 engine used in Google Chrome browser and node.js web server among others. This is an open source project which implemented some advanced optimization methods including Just-in-Time compilation, Polymorphic Inline Caches, optimized recompilation of hot code regions, On Stack Replacement. In previous year we were involved in project of optimizing performance of V8 JavaScript engine on major benchmark suites including Octane, SunSpider and Kraken. The project was quite time limited, however we achieved about 10% total performance improvement compared to open source version. We have decided to focus on following approaches to achieve the project’s goal: optimized build of V8 itself, because total running time is shared between compilation and execution; tuning of V8 runtime options which default values may not be always optimal; implementation of additional scalar optimizations. All of these approaches have made contribution to final result.
Keywords:
JavaScript, optimizations, V8, common subexpression elimination.
Citation:
D. Botcharnikov, “Approaches to optimizing V8 JavaScript engine”, Proceedings of ISP RAS, 27:6 (2015), 21–32
Linking options:
https://www.mathnet.ru/eng/tisp182 https://www.mathnet.ru/eng/tisp/v27/i6/p21
|
Statistics & downloads: |
Abstract page: | 359 | Full-text PDF : | 382 | References: | 36 |
|