Machine-learning based approaches [3] are increasingly used to solve a number of different compiler optimization problems. In this project, we want to explore ML-based techniques in the context of the Graal compiler [1] and its Truffle [2] language implementation framework, to improve the performance of managed programming languages such as Java, Python or JavaScript. The focus of the project will be around two main compiler optimization problems: optimization selection (choosing which optimizations to apply) and phase-ordering (choosing the order of applying optimizations).
[2] https://www.graalvm.org/22.0/graalvm-as-a-platform/language-implementation-framework/
[3] https://arxiv.org/abs/1801.04405