An evaluation of different modeling techniques for iterative compilation

  • Authors:
  • Eunjung Park;Sameer Kulkarni;John Cavazos

  • Affiliations:
  • University of Delaware, Newark, DE, USA;University of Delaware, Newark, DE, USA;University of Delaware, Newark, DE, USA

  • Venue:
  • CASES '11 Proceedings of the 14th international conference on Compilers, architectures and synthesis for embedded systems
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Iterative compilation techniques, which involve iterating over different sets of optimizations, have proven useful in helping compilers choose the right set of optimizations for a given program. However, compilers typically have a large number of optimizations to choose from, making it impossible to iterate over a significant fraction of the entire optimization search space. Recent research has proposed to "intelligently" iterate over the optimization search space using predictive methods. In particular, state-the-art methods in iterative compilation use characteristics of the code being optimized to predict good optimization sequences to evaluate. Thus, an important step in developing predictive methods for compilation is deciding how to model the problem of choosing the right optimizations. In this paper, we evaluate three different ways of modeling the problem of choosing the right optimization sequences using machine learning techniques. We evaluate a novel prediction modeling technique, namely a tournament predictor, that is able to effectively predict good optimization sequences. We show that our tournament predictor can outperform current state-of-the-art predictors and the most aggressive setting of the Open64 compiler (-Ofast) on an average by 75% in just 10 iterations over a set of embedded and scientific kernels. Moreover, using our tournament predictor, we achieved on average 10% improvement over -Ofast for a set of MiBench applications.