MilePost - MachIne Learning for Embedded PrOgramS opTimization
Overview
Milepost is about using machine learning methods to improve compilation of computer programs, with a focus on embedded and reconfigurable architectures. Several approaches are being investigated, including these:
- Iterative compilation for high performance libraries – Compiling multiple versions using machine learning aided iterative compilation and rapidly selecting the best version at runtime.
- Predictive modeling for code transformations – Learning a predictive model that can later be queried to provide an optimal set of compiler optimizations based on code/data/architecture features.
- Continuous optimization – Exploiting data collected across different code/data/hardware to continuously improve compiler performance. Also, recompilation during execution.