Iterative Optimization in the Polyhedral Model: Part I, One-Dimensional Time
- 1 March 2007
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- Vol. 38, 144-156
- https://doi.org/10.1109/cgo.2007.21
Abstract
Emerging microprocessors offer unprecedented parallel computing capabilities and deeper memory hierarchies, increasing the importance of loop transformations in optimizing compilers. Because compiler heuristics rely on simplistic performance models, and because they are bound to a limited set of transformations sequences, they only uncover a fraction of the peak performance on typical benchmarks. Iterative optimization is a maturing framework to address these limitations, but so far, it was not successfully applied complex loop transformation sequences because of the combinatorics of the optimization search space. We focus on the class of loop transformation which can be expressed as one-dimensional affine schedules. We define a systematic exploration method to enumerate the space of all legal, distinct transformations in this class. This method is based on an upstream characterization, as opposed to state-of-the-art downstream filtering approaches. Our results demonstrate orders of magnitude improvements in the size of the search space and in the convergence speed of a dedicated iterative optimization heuristicKeywords
This publication has 25 references indexed in Scilit:
- VISTAACM Transactions on Embedded Computing Systems, 2006
- Lattice-Based Memory AllocationIEEE Transactions on Computers, 2005
- Fast and efficient searches for effective optimization-phase sequencesACM Transactions on Architecture and Code Optimization, 2005
- Space–time mapping and tiling: a helpful combinationConcurrency and Computation: Practice and Experience, 2004
- Meta optimizationACM SIGPLAN Notices, 2003
- Array recovery and high-level transformations for DSP applicationsACM Transactions on Embedded Computing Systems, 2003
- Improving data locality with loop transformationsACM Transactions on Programming Languages and Systems, 1996
- Some efficient solutions to the affine scheduling problem. Part II. Multidimensional timeInternational Journal of Parallel Programming, 1992
- Some efficient solutions to the affine scheduling problem. I. One-dimensional timeInternational Journal of Parallel Programming, 1992
- The mapping of linear recurrence equations on regular arraysJournal of Signal Processing Systems, 1989