Ciência_Iscte
Publications
Publication Detailed Description
Smart selection of optimizations in dynamic compilers
Journal Title
Concurrency and Computation: Practice and Experience
Year (definitive publication)
2021
Language
English
Country
United States of America
More Information
Web of Science®
Scopus
Google Scholar
This publication is not indexed in Overton
Abstract
Dynamic compilers perform compilation and generation of target code during runtime, implying that the compilation time is added into the program runtime. Thus, to build a high-performing dynamic compilation system, it is crucial to be able to generate high-quality code and, at the same time, have a small compilation cost. In this article, we present an approach that uses machine learning to select sequences of optimization for dynamic compilation that considers both code quality and compilation overhead. Our approach starts by training a model, offline, with a knowledge bank of those sequences with low overhead and high-quality code generation capability using a genetic heuristic. Then, this bank is used to guide the smart selection of optimizations sequences for the compilation of code fragments during the emulation of an application. We evaluate the proposed strategy in two LLVM-based dynamic binary translators, namely OI-DBT and HQEMU, and show that these two translators can achieve average speedups of 1.26x and 1.15x in MiBench and Spec Cpu benchmarks, respectively.
Acknowledgements
--
Keywords
Dynamic compilation,HQEMU,OI-DBT,Smart optimizations
Fields of Science and Technology Classification
- Computer and Information Sciences - Natural Sciences
Funding Records
| Funding Reference | Funding Entity |
|---|---|
| 313012/2017-2 | National Council for Scientific and Technological Development (CNPq) |
| 2013/08293-7 | Fundação de Amparo a Pesquisa do Estado de Sao Paulo (FAPESP) |
Português