Adaptive Optimizing Compilers for the 21st Century

  • Authors:
  • Keith D. Cooper;Devika Subramanian;Linda Torczon

  • Affiliations:
  • Department of Computer Science, Rice University, 6100 Main Street, MS 132, Houston, TX 77005 keith@rice.edu;Department of Computer Science, Rice University, 6100 Main Street, MS 132, Houston, TX 77005 devika@rice.edu;Department of Computer Science, Rice University, 6100 Main Street, MS 132, Houston, TX 77005 linda@rice.edu

  • Venue:
  • The Journal of Supercomputing
  • Year:
  • 2002

Quantified Score

Hi-index 0.01

Visualization

Abstract

Historically, compilers have operated by applying a fixed set of optimizations in a predetermined order. We call such an ordered list of optimizations a compilation sequence. This paper describes a prototype system that uses biased random search to discover a program-specific compilation sequence that minimizes an explicit, external objective function. The result is a compiler framework that adapts its behavior to the application being compiled, to the pool of available transformations, to the objective function, and to the target machine.This paper describes experiments that attempt to characterize the space that the adaptive compiler must search. The preliminary results suggest that optimal solutions are rare and that local minima are frequent. If this holds true, biased random searches, such as a genetic algorithm, should find good solutions more quickly than simpler strategies, such as hill climbing.