Publication | Closed Access
Meta optimization
247
Citations
13
References
2003
Year
EngineeringCompiler TechnologyComputer ArchitectureSoftware EngineeringSoftware AnalysisCompiler WritersCompilersParallel ComputingDynamic CompilationCompiler SupportComputer EngineeringComputer ScienceProgram OptimizationOptimizing CompilerMeta OptimizationProgram AnalysisSoftware TestingParallel ProgrammingCompiler Heuristics
Compiler writers have crafted many heuristics over the years to approximately solve NP-hard problems efficiently. Finding a heuristic that performs well on a broad range of applications is a tedious and difficult process. This paper introduces Meta Optimization, a methodology for automatically fine-tuning compiler heuristics. Meta Optimization uses machine-learning techniques to automatically search the space of compiler heuristics. Our techniques reduce compiler design complexity by relieving compiler writers of the tedium of heuristic tuning. Our machine-learning system uses an evolutionary algorithm to automatically find effective compiler heuristics. We present promising experimental results. In one mode of operation Meta Optimization creates application-specific heuristics which often result in impressive speedups. For hyperblock formation, one optimization we present in this paper, we obtain an average speedup of 23% (up to 73%) for the applications in our suite. Furthermore, by evolving a compiler's heuristic over several benchmarks, we can create effective, general-purpose heuristics. The best general-purpose heuristic our system found for hyperblock formation improved performance by an average of 25% on our training set, and 9% on a completely unrelated test set. We demonstrate the efficacy of our techniques on three different optimizations in this paper: hyperblock formation, register allocation, and data prefetching.
| Year | Citations | |
|---|---|---|
1994 | 700 | |
1992 | 485 | |
1990 | 333 | |
1999 | 319 | |
1994 | 223 | |
2004 | 165 | |
1997 | 123 | |
1989 | 119 | |
1986 | 107 | |
1997 | 53 |
Page 1
Page 1