arXiv · 2203.02340
Deoptless: Speculation with Dispatched On-Stack Replacement and Specialized Continuations
Abstract
Just-in-time compilation provides significant performance improvements for programs written in dynamic languages. These benefits come from the ability of the compiler to speculate about likely cases and generate optimized code for these. Unavoidably, speculations sometimes fail and the optimizations must be reverted. In some pathological cases, this can leave the program stuck with suboptimal code. In this paper we propose deoptless, a technique that replaces deoptimization points with dispatched specialized continuations. The goal of deoptless is to take a step towards providing users with a more transparent performance model in which mysterious slowdowns are less frequent and grave.
Explore related subjects
Keep this discovery
Olivier Flückiger, Jan Ječmen, Sebastián Krynski, Jan Vitek. 2022-03-04. Deoptless: Speculation with Dispatched On-Stack Replacement and Specialized Continuations. https://doi.org/10.1145/3519939.3523729
Cite the original work for its findings. Save a collection to share your selection of sources.