Skip to Main content Skip to Navigation
Reports

Monoparametric Tiling of Polyhedral Programs

Abstract : Tiling is a crucial program transformation, adjusting the ops-to-bytes balance of codes to improve locality. Like parallelism, it can be applied at multiple levels. Allowing tile sizes to be symbolic parameters at compile time has many benefits, including ecient autotuning, and run-time adaptability to system variations. For polyhedral programs, parametric tiling in its full generality is known to be non-linear, breaking the mathematical closure properties of the polyhedral model. Most compilation tools therefore either perform fixed size tiling, or apply parametric tiling in only the final, code generation step. We introduce monoparametric tiling, a restricted parametric tiling transformation. We show that, despite being parametric, it retains the closure properties of the polyhedral model. We first prove that applying monoparametric partitioning (i) to a polyhedron yields a union of polyhedra, and (ii) to an ane function produces a piecewise-ane function. We then use these properties to show how to tile an entire polyhedral program. Our monoparametric tiling is general enough to handle tiles with arbitrary tile shapes that can tesselate the iteration space (e.g., hexagonal, trapezoidal, etc). This enables a wide range of polyhedral analyses and transformations to be applied.
Complete list of metadata

Cited literature [51 references]  Display  Hide  Download

https://hal.inria.fr/hal-01952593
Contributor : Christophe Alias <>
Submitted on : Wednesday, December 12, 2018 - 11:47:47 AM
Last modification on : Thursday, July 1, 2021 - 5:58:03 PM
Long-term archiving on: : Wednesday, March 13, 2019 - 1:46:04 PM

File

RR-9233.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-01952593, version 1

Collections

Citation

Guillaume Iooss, Christophe Alias, Sanjay Rajopadhye. Monoparametric Tiling of Polyhedral Programs. [Research Report] RR-9233, INRIA Grenoble - Rhone-Alpes. 2018, pp.1-28. ⟨hal-01952593⟩

Share

Metrics

Record views

142

Files downloads

493