anticache

Performance and Power Consumption Analysis of Chrome JavaScript Engine V8 according to Recompilation Strategies (Masteathesis )

20.09.2017

Hooman Habibi


20.09.2017, 16:00, room 3945

Abstract:

As an important part of the browser, the JavaScript engine plays a key role in web browsing. The JavaScript engine is responsible for executing JavaScript, and it affects directly users browsing experience and the overall power consumption of the browser. However, so far, most of the research about the JavaScript engine have focused on how to improve its performance, and litte research has been done on its power consumption. This paper explores the quantitative relationship between the optimization threshold value and the the JavaScript engine V8’s performance and power consumption.JavaScript engine V8 is an open source project. In the V8 source code exists an integer constant called kProfilersTicksBeforeOptimization (i.e. optimization threshold) that defines the threshold which the optimization compiler to optimize "hot function" in the JavaScript. Two different performance and power testing experiments of V8 engine have been designed to explore the quantitative relationship between kProfilersTicksBeforeOptimization and V8’s performance and power consumption. Firstly, the hardware and software platform have been established. Secondly, different positive integers are assigned to kProfilersTicksBeforeOptimization, and then recompile d8 engines (independent V8 engine) and V8 embedded browsers, i.e. ContentShells. Thirdly, corresponding benchmarking tests have been implemented on these d8 engines and ContentShells, i.e. Octane benchmark suite for these d8 engines, and Telemetry-based benchmarking tests for these ContentShells, in order to get the V8 engine’s performance data, tracing results, and the power consumption. A program called PowerLogger is used to measure the power consumption of the ODROID-XU3 in both experiments. At last, by analyzing the experiments result, an approximate quantitative relationship between kProfilersTicksBeforeOptimization and the V8 engine’s performance and power consumption has been obtained.Finally, the direction of further work is briefly discussed.