JSOPT: A Framework for Optimization of JavaScript on Web Browsers
Abstract
In the current era where multi-core technologies are very common in use, the existing web browsers are unable to fully utilize the capability of multi-core processors.The web browsers execute the JavaScript code locally in order to produce an efficient response of web pages. This responsiveness is however limited by the fact that the JavaScript code is uni-threaded, and consequently, the efficiency of the code degrades if it involves a large number of computations. In this paper, we propose a framework called JSOPT (JavaScript Optimizer) which generates an efficient JavaScript code to effectively utilize multi-core architectures. The framework uses a template containing constructs for communication & synchronization, and subsequently generates optimized code to be executed on the multi-core architectures. Multiple instances of templates are then generated with different implementations of the code and the best instance is selected to be incorporated in the library. With the optimized code generated using JSOPT, our results show a significant improvement in the performance of several benchmarks involving intensive computations based matrix operations on the Mozilla Firefox web browser.