Reducing Feedback Pollution
Just-in-time compilers enhance the performance of future invocations of a function by generating code tailored to past behavior. To achieve this, compilers use a data structure, often referred to as a feedback vector, to record information about each function’s invocations. However, over time, feedback vectors tend to become less precise, leading to lower-quality code – a phenomenon known as feedback vector pollution. This paper examines feedback vector pollution within the context of a compiler for the R language. We provide data, discuss an approach to reduce pollution in practice, and implement a proof-of-concept implementation of this approach. The preliminary results of the implementation indicate ∼30% decrease in polluted compilations and ∼37% decrease in function pollution throughout our corpus.
Authors
- Filip Křikava (ORCID: https://orcid.org/0000-0002-0478-6202)
- Sebastián Krynski (ORCID: https://orcid.org/0000-0002-4124-0225)
- Michal Štěpánek
- Jan Vítek (ORCID: https://orcid.org/0000-0003-4052-3458)
- Filip Říha
Institutions
- Northeastern University (US)
- Czech Technical University in Prague (CZ)
Publication Details
- Published
- 2024-10-17
- DOI
- https://doi.org/10.1145/3689490.3690404
- Citations
- 1
- Primary Topic
- Advanced Database Systems and Queries
- Type
- article
- Field-Weighted Citation Impact
- 0.35