• DocumentCode
    3305435
  • Title

    Automatic Feature Generation for Machine Learning Based Optimizing Compilation

  • Author

    Leather, Hugh ; Bonilla, Edwin ; O´Boyle, Michael

  • Author_Institution
    Sch. of Inf., Univ. of Edinburgh, Edinburgh
  • fYear
    2009
  • fDate
    22-25 March 2009
  • Firstpage
    81
  • Lastpage
    91
  • Abstract
    Recent work has shown that machine learning can automate and in some cases outperform hand crafted compiler optimizations. Central to such an approach is that machine learning techniques typically rely upon summaries or features of the program. The quality of these features is critical to the accuracy of the resulting machine learned algorithm; no machine learning method will work well with poorly chosen features. However, due to the size and complexity of programs, theoretically there are an infinite number of potential features to choose from. The compiler writer now has to expend effort in choosing the best features from this space. This paper develops a novel mechanism to automatically find those features which most improve the quality of the machine learned heuristic. The feature space is described by a grammar and is then searched with genetic programming and predictive modeling. We apply this technique to loop unrolling in GCC 4.3.1 and evaluate our approach on a Pentium 6. On a benchmark suite of 57 programs, GCC´s hard-coded heuristic achieves only 3% of the maximum performance available, while a state of the art machine learning approach with hand-coded features obtains 59%. Our feature generation technique is able to achieve 76% of the maximum available speedup, outperforming existing approaches.
  • Keywords
    genetic algorithms; grammars; learning (artificial intelligence); program compilers; Pentium 6; automatic feature generation; compilation; compiler writer; feature generation technique; genetic programming; grammar; loop unrolling; machine learning; predictive modeling; Genetic programming; Humans; Informatics; Learning systems; Machine learning; Machine learning algorithms; Optimizing compilers; Predictive models; Program processors; Tree data structures;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Code Generation and Optimization, 2009. CGO 2009. International Symposium on
  • Conference_Location
    Seattle, WA
  • Print_ISBN
    978-0-7695-3576-0
  • Type

    conf

  • DOI
    10.1109/CGO.2009.21
  • Filename
    4907653