DocumentCode
3459366
Title
Automatic Correction of Loop Transformations
Author
Vasilache, Nicolas ; Cohen, Albert ; Pouchet, Louis-Noël
Author_Institution
INRIA Futurs & Paris-Sud 11 Univ., Paris
fYear
2007
fDate
15-19 Sept. 2007
Firstpage
292
Lastpage
304
Abstract
Loop nest optimization is a combinatorial problem. Due to the growing complexity of modern architectures, it involves two increasingly difficult tasks: (1) analyzing the profitability of sequences of transformations to enhance parallelism, locality, and resource usage, which amounts to a hard problem on a non-linear objective function; (2) the construction and exploration of search space of legal transformation sequences. Practical optimizing and parallelizing compilers decouple these tasks, resorting to a predefined set of enabling transformations to eliminate all sorts of optimization-limiting semantical constraints. State-of-the-art optimization heuristics face a hard decision problem on the selection of enabling transformations only remotely related to performance. We propose a new design where optimization heuristics first address the main performance anomalies, then correct potentially illegal loop transformations a posteriori, attempting to minimize the performance impact of the necessary adjustments. We propose a general method to correct any sequence of loop transformations through a combination of loop shifting, code motion and index-set splitting. Sequences of transformations are modeled by compositions of geometric transformations on multidimensional affine schedules. We provide experimental evidence of the scalability of the algorithms on real loop optimizations.
Keywords
decision theory; geometry; optimisation; optimising compilers; parallelising compilers; profitability; program control structures; scheduling; search problems; sequences; code motion; combinatorial problem; geometric transformations; hard decision problem; index-set splitting; legal transformation sequences; loop nest optimization; loop shifting; loop transformation correction; multidimensional affine schedules; nonlinear objective function; optimization heuristics; optimizing compilers; parallelizing compilers; real loop optimizations; search space; transformation sequences profitability; Constraint optimization; Design optimization; Law; Legal factors; Multidimensional systems; Optimizing compilers; Profitability; Scalability; Solid modeling; Space exploration;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel Architecture and Compilation Techniques, 2007. PACT 2007. 16th International Conference on
Conference_Location
Brasov
ISSN
1089-795X
Print_ISBN
978-0-7695-2944-8
Type
conf
DOI
10.1109/PACT.2007.4336220
Filename
4336220
Link To Document