Back to Search Start Over

On the Verification of Polyhedral Program Transformations

Authors :
Alias, Christophe
Iooss, Guillaume
Rajopadhye, Sanjay
CASH - Compilation and Analysis, Software and Hardware (CASH)
Inria Grenoble - Rhône-Alpes
Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-Laboratoire de l'Informatique du Parallélisme (LIP)
École normale supérieure de Lyon (ENS de Lyon)-Université Claude Bernard Lyon 1 (UCBL)
Université de Lyon-Université de Lyon-Institut National de Recherche en Informatique et en Automatique (Inria)-Centre National de la Recherche Scientifique (CNRS)-École normale supérieure de Lyon (ENS de Lyon)-Université Claude Bernard Lyon 1 (UCBL)
Université de Lyon-Université de Lyon-Centre National de la Recherche Scientifique (CNRS)
Compiler Optimization and Run-time Systems (CORSE)
Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-Laboratoire d'Informatique de Grenoble (LIG)
Centre National de la Recherche Scientifique (CNRS)-Université Grenoble Alpes (UGA)-Institut polytechnique de Grenoble - Grenoble Institute of Technology (Grenoble INP )
Université Grenoble Alpes (UGA)-Centre National de la Recherche Scientifique (CNRS)-Université Grenoble Alpes (UGA)-Institut polytechnique de Grenoble - Grenoble Institute of Technology (Grenoble INP )
Université Grenoble Alpes (UGA)
Department of Computer Science [Colorado State University]
Colorado State University [Fort Collins] (CSU)
École normale supérieure - Lyon (ENS Lyon)-Université Claude Bernard Lyon 1 (UCBL)
Université de Lyon-Université de Lyon-Institut National de Recherche en Informatique et en Automatique (Inria)-Centre National de la Recherche Scientifique (CNRS)-École normale supérieure - Lyon (ENS Lyon)-Université Claude Bernard Lyon 1 (UCBL)
Source :
HPCS 2020-18th International Conference on High Performance Computing & Simulation, CADO 2020-3rd Special Session on Compiler Architecture, Design and Optimization, HPCS 2020-18th International Conference on High Performance Computing & Simulation, CADO 2020-3rd Special Session on Compiler Architecture, Design and Optimization, Oct 2020, Barcelona, Spain. pp.1-8
Publication Year :
2020
Publisher :
HAL CCSD, 2020.

Abstract

International audience; This paper presents a pragma language to specify a polyhedral program transformation directly in the code and a verification algorithm able to check the correctness of the specified transformation. Our language is general enough to specify a loop tiling by an arbitrary polyhedral tile shape (e.g., hexagons, diamonds, trapezoids), and whose size may depend on a scaling parameter (monoparametric tiling). Our verification algorithm checks the legality of the proposed transformation, and provides counterexamples of unsatisfied dependences when it is incorrect. In addition, out tool infers the domain of scaling parameters where the tiling is not legal. We developed a tool suite implementing these concepts with a verification tool (MPPCHECK) and a code generation tool (MPPCODEGEN), that are available and may be downloaded together with a rich set of examples. We evaluate the performance of the verification and the code generation on kernels from the PolyBench suite.

Details

Language :
English
Database :
OpenAIRE
Journal :
HPCS 2020-18th International Conference on High Performance Computing & Simulation, CADO 2020-3rd Special Session on Compiler Architecture, Design and Optimization, HPCS 2020-18th International Conference on High Performance Computing & Simulation, CADO 2020-3rd Special Session on Compiler Architecture, Design and Optimization, Oct 2020, Barcelona, Spain. pp.1-8
Accession number :
edsair.dedup.wf.001..4ff519cb84ee3139458d6b9032a0b700