Using Machine Learning to Focus Iterative Optimization
Citations Over TimeTop 1% of 2006 papers
Abstract
Iterative compiler optimization has been shown to outperform static approaches. This, however, is at the cost of large numbers of evaluations of the program. This paper develops a new methodology to reduce this number and hence speed up iterative optimization. It uses predictive modelling from the domain of machine learning to automatically focus search on those areas likely to give greatest performance. This approach is independent of search algorithm, search space or compiler infrastructure and scales gracefully with the compiler optimization space size. Off-line, a training set of programs is iteratively evaluated and the shape of the spaces and program features are modelled. These models are learnt and used to focus the iterative optimization of a new program. We evaluate two learnt models, an independent and Markov model, and evaluate their worth on two embedded platforms, the Texas Instrument C67I3 and the AMD Au1500. We show that such learnt models can speed up iterative search on large spaces by an order of magnitude. This translates into an average speedup of 1.22 on the TI C6713 and 1.27 on the AMD Au1500 in just 2 evaluations.
Related Papers
- → The use of compiler optimizations for embedded systems software(2008)7 cited
- Cassyopia: compiler assisted system optimization(2003)
- → A novel scheme for Compiler Optimization Framework(2015)6 cited
- Application Performance Evaluation on Different Compiler Optimizations(2013)
- Statistical compiler tuning(2006)