A Metaobject Protocol for Optimizing Application-Specific Run-Time Variability
Just in Time (JIT) compilers and their aggressive speculative optimizations reduced the performance gap between dynamic and static languages drastically. To successfully speculate, compilers rely on the fact that the observed variability of programs at run time is low. However, there remain patterns of variability, which are hard to capture with heuristics. Specifically, ephemeral, warmup, rare, and highly indirect variability are challenges for today’s compiler heuristics. As a consequence, they can lead to reduced application performance. However, these types of variability are identifiable at the application level and could be mitigated with information provided by developers. As a solution, we propose a metaobject protocol for dynamic compilation systems to enable application developers to provide such information at run time. As a proof of concept, we demonstrate performance improvements for a few scenarios in a dynamic language built on top of the Truffle and Graal system.
Slides (Chari.pdf) | 3.63MiB |
preprint (a3-chari.pdf) | 131KiB |
Mon 19 JunDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
11:00 - 12:30 | |||
11:00 30mTalk | dart2java: Running Dart in Java-based Environments ICOOOLPS Matthias Springer Tokyo Institute of Technology, Andrew Krieger University of California, Los Angeles, Stanislav Manilov University of Edinburgh, Hidehiko Masuhara Tokyo Institute of Technology Link to publication DOI File Attached | ||
11:30 30mTalk | VM Wrapping - Fake it till you make it ICOOOLPS Johannes Henning Hasso Plattner Institute, Tim Felgentreff Hasso-Plattner-Institute, Potsdam, Robert Hirschfeld HPI Link to publication DOI File Attached | ||
12:00 30mTalk | A Metaobject Protocol for Optimizing Application-Specific Run-Time Variability ICOOOLPS Guido Chari University of Buenos Aires, Argentina, Diego Garbervetsky University of Buenos Aires, Argentina, Stefan Marr Johannes Kepler University Linz Link to publication DOI File Attached |