JavaScript performance is paramount to a user’s browsing experience. Browser vendors have gone to great lengths to improve JavaScript’s steady-state performance. This has led to sophisticated web applications. However, as users increasingly expect instantaneous page load times, another important goal for JavaScript engines is to attain minimal startup times.
In this paper, we reduce the startup time of JavaScript programs by enhancing the reuse of compilation and optimization information across different executions. Specifically, we propose a new scheme to increase the startup performance of Inline Caching (IC), a key optimization for dynamic type systems. The idea is to represent a substantial portion of the IC information in an execution in a context-independent way, and reuse it in subsequent executions. We call our enhanced IC design Reusable Inline Caching (RIC). We integrate RIC into the state-of-the-art Google V8 JavaScript engine and measure its impact on the initialization time of popular JavaScript libraries. By recycling IC information collected from a previous execution, RIC reduces the average initialization time per library by 17%.
Tue 25 JunDisplayed time zone: Tijuana, Baja California change
16:00 - 17:00 | Dynamics: Analysis and CompilationPLDI Research Papers at 229AB Chair(s): Nadia Polikarpova University of California, San Diego | ||
16:00 20mTalk | SemCluster: Clustering of Imperative Programming Assignments Based on Quantitative Semantic Features PLDI Research Papers David Mitchel Perry Purdue University, Dohyeong Kim Purdue University, Roopsha Samanta Purdue University, Xiangyu Zhang Purdue University Pre-print Media Attached | ||
16:20 20mTalk | Computing Summaries of String Loops in C for Better Testing and Refactoring PLDI Research Papers Timotej Kapus Imperial College London, Oren Ish-Shalom Tel Aviv University, Israel, Shachar Itzhaky Technion, Israel, Noam Rinetzky Tel Aviv University, Cristian Cadar Imperial College London Link to publication Pre-print Media Attached | ||
16:40 20mTalk | Reusable Inline Caching for JavaScript Performance PLDI Research Papers Jiho Choi University of Illinois at Urbana-Champaign, Thomas Shull University of Illinois at Urbana-Champaign, Josep Torrellas University of Illinois at Urbana-Champaign |