A polyhedral compilation framework for loops with dynamic data-dependent bounds

Jie Zhao 1 Michael Kruse 1 Albert Cohen 1
1 Parkas - Parallélisme de Kahn Synchrone
DI-ENS - Département d'informatique de l'École normale supérieure, CNRS - Centre National de la Recherche Scientifique, Inria de Paris
Abstract : We study the parallelizing compilation and loop nest optimization of an important class of programs where counted loops have a dynamic data-dependent upper bound. Such loops are amenable to a wider set of transformations than general while loops with inductively defined termination conditions: for example, the substitution of closed forms for induction variables remains applicable, removing the loop-carried data dependences induced by termination conditions. We propose an automatic compilation approach to parallelize and optimize dynamic counted loops. Our approach relies on affine relations only, as implemented in state-of-the-art polyhedral libraries. Revisiting a state-of-the-art framework to parallelize arbitrary while loops, we introduce additional control dependences on data-dependent predicates. Our method goes beyond the state of the art in fully automating the process, specializing the code generation algorithm to the case of dynamic counted loops and avoiding the introduction of spurious loop-carried dependences. We conduct experiments on representative irregular computations, from dynamic programming, computer vision and finite element methods to sparse matrix linear algebra. We validate that the method is applicable to general affine transformations for locality optimization, vectorization and parallelization.
Type de document :
Communication dans un congrès
CC'18 - 27th International Conference on Compiler Construction, Feb 2018, Vienna, Austria. ACM Press, 〈10.1145/3178372.3179509〉
Liste complète des métadonnées

Littérature citée [7 références]  Voir  Masquer  Télécharger

https://hal.inria.fr/hal-01720368
Contributeur : Jie Zhao <>
Soumis le : lundi 11 juin 2018 - 22:21:16
Dernière modification le : lundi 10 septembre 2018 - 13:29:53
Document(s) archivé(s) le : mercredi 12 septembre 2018 - 23:36:48

Fichier

cc2018-paper.pdf
Accord explicite pour ce dépôt

Identifiants

Collections

Citation

Jie Zhao, Michael Kruse, Albert Cohen. A polyhedral compilation framework for loops with dynamic data-dependent bounds. CC'18 - 27th International Conference on Compiler Construction, Feb 2018, Vienna, Austria. ACM Press, 〈10.1145/3178372.3179509〉. 〈hal-01720368〉

Partager

Métriques

Consultations de la notice

178

Téléchargements de fichiers

41