Adaptive optimization in the Jalapeño JVM
By Matthew Arnold, Stephen J. Fink, D. Grove, Michael Hind, Peter F. Sweeney. Conference on Object-Oriented Programming Systems, Languages, and Applications, 2000
537 citations recorded by the source corpus.
Future high-performance virtual machines will improve performance through sophisticated online feedback-directed optimizations. this paper presents the architecture of the Jalapeño Adaptive Optimization System, a system to support leading-edge virtual machine technology and enable ongoing research on online feedback-directed optimizations. We describe the extensible system architecture, based on a federation of threads with asynchronous communication. We present an implementation of the general architecture that supports adaptive multi-level optimization based purely on statistical sampling. We empirically demonstrate that this profiling technique has low overhead and can improve startup and steady-state performance, even without the presence of online feedback-directed optimizations. The paper also describes and evaluates an online feedback-directed inlining optimization based on statistical edge sampling. The system is written completely in Java, applying the described techniques not only to application code and standard libraries, but also to the virtual machine itself.
Subfields: Artificial Intelligence, Computational Theory and Mathematics, Hardware and Architecture
View Paper: https://www.semanticscholar.org/paper/c1a1944349a6ad72f1ab20131c8157341dd9b426
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Artificial Intelligence
- Erik Krogh Kristensen
- Anders Møller
- Tianqi Chen
- Zachary Tatlock
- Frank Hutter
- Chunyuan Li
- Tong Wang
- Martin Wistuba
In Computational Theory and Mathematics
In Hardware and Architecture
Citations in the corpus
- Relay: a new IR for machine learning frameworks (2018, methodology): “to test automatic differentiation by compiling Relay programs to Python, using the ‘autograd’ Python library to compute the gradient, then checking the gradient’s results using property-based testing [10]. 5.4 Numerical Accuracy ML workloads have proven exceptionally robust to issues of rounding err”
- Grounded Copilot: How Programmers Interact with Code-Generating Models (2022, background): “For example, P16 wanted to set up property-based testing [Claessen and Hughes 2000] to run automatically on Copilot suggestions.”
- Reducing the overhead of dynamic compilation (2001, unknown): “The adaptive optimization functionality was recently added to the Jalape˜ no virtual machine [ 28 ], building on the lazy compilation and background compilation ideas presented in this paper.”
- Type test scripts for TypeScript testing (2017, methodology): “Property-based testing, or quickchecking [Claessen and Hughes 2000], is another technique that can automatically generate inputs and check outputs for the system under test, often based on types.”