Skip to main content
Article thumbnail
Location of Repository

Machine learning algorithms for choosing compiler heuristics

By  and Gennady G. Pekhimenko and Gennady G. Pekhimenko


During the last several decades compiler developers have invented a set of powerful heuristics to deal with the complexity of the algorithms they have to use. However, this led to a new problem of finding the best values for every heuristic. This paper describes how machine learning techniques, such as logistic regression, can be used to build a framework for the automatic tuning of compiler heuristics. In this paper we were focused on decreasing the compile time for the static commercial compiler called TPO (Toronto Portable Optimizer) while preserving the execution time. Nevertheless, our techniques can also be used for decreasing the execution time and in dynamic behavior. Our experiments showed that we can speedup the compile process by at least a factor of two with almost the same generated code quality on the SPEC2000 benchmark suite, and that our logistic classifier achieves the same prediction quality for non-SPEC benchmarks. ii Acknowledgements I would like to thank my supervisor, Angela Demke Brown, for her guidance during my research which made possible this work to appear. I am also grateful to Mathew Zaleski for his comments throughout my work

Topics: iii Contents
Year: 2008
OAI identifier: oai:CiteSeerX.psu:
Provided by: CiteSeerX
Download PDF:
Sorry, we are unable to provide the full text but you may find it at the following location(s):
  • (external link)
  • (external link)
  • Suggested articles

    To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.