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 de l'École normale supérieure, 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.
Type de document :
Communication dans un congrès
ACM Conference on Programming Language Design and Implementation (PLDI), Jun 2008, Tucson, Arizona, United States. 2008
Liste complète des métadonnées

https://hal.archives-ouvertes.fr/hal-01257273
Contributeur : Albert Cohen <>
Soumis le : samedi 16 janvier 2016 - 02:28:12
Dernière modification le : mardi 12 février 2019 - 10:52:07

Identifiants

  • HAL Id : hal-01257273, version 1

Citation

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. 2008. 〈hal-01257273〉

Partager

Métriques

Consultations de la notice

313