Skip to Main content Skip to Navigation
Conference papers

Iterative Optimization in the Polyhedral Model: Part II, Multidimensional Time

Louis-Noël Pouchet 1 Cédric Bastoul 2, 3 Albert Cohen 4 John Cavazos 5
2 CAMUS - Compilation pour les Architectures MUlti-coeurS
LSIIT - Laboratoire des Sciences de l'Image, de l'Informatique et de la Télédétection, Inria Nancy - Grand Est
4 Parkas - Parallélisme de Kahn Synchrone
DI-ENS - Département d'informatique - ENS Paris, Inria Paris-Rocquencourt, CNRS - Centre National de la Recherche Scientifique : UMR 8548
Abstract : High-level loop optimizations are necessary to achieve good performance over a wide variety of processors. Their performance impact can be significant because they involve in-depth program transformations that aim to sustain a balanced workload over the computational, storage, and communication resources of the target architecture. Therefore, it is mandatory that the compiler accurately models the target architecture as well as the effects of complex code restructuring. However, because optimizing compilers (1) use simplistic performance models that abstract away many of the complexities of modern architectures, (2) rely on inaccurate dependence analysis, and (3) lack frameworks to express complex interactions of transformation sequences, they typically uncover only a fraction of the peak performance available on many applications. We propose a complete iterative framework to address these issues. We rely on the polyhedral model to construct and traverse a large and expressive search space. This space encompasses only legal, distinct versions resulting from the restructuring of any static control loop nest. We first propose a feedback-driven iterative heuristic tailored to the search space properties of the polyhedral model. Though, it quickly converges to good solutions for small kernels, larger benchmarks containing higher dimensional spaces are more challenging and our heuristic misses opportunities for significant performance improvement. Thus, we introduce the use of a genetic algorithm with specialized operators that leverage the polyhedral representation of program dependences. We provide experimental evidence that the genetic algorithm effectively traverses huge optimization spaces, achieving good performance improvements on large loop nests with complex memory accesses.
Complete list of metadata
Contributor : Albert Cohen Connect in order to contact the contributor
Submitted on : Saturday, January 16, 2016 - 2:28:12 AM
Last modification on : Friday, January 21, 2022 - 3:15:34 AM


  • HAL Id : hal-01257273, version 1


Louis-Noël Pouchet, Cédric Bastoul, Albert Cohen, John Cavazos. Iterative Optimization in the Polyhedral Model: Part II, Multidimensional Time. ACM Conference on Programming Language Design and Implementation (PLDI), Jun 2008, Tucson, Arizona, United States. ⟨hal-01257273⟩



Les métriques sont temporairement indisponibles