Skip to Main content Skip to Navigation

A combined language and polyhedral approach to heterogeneous parallelism

Jie Zhao 1, 2
2 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 : Nowadays, optimizing compilers are increasingly challenged by the diversity of programming languages and heterogeneity of architectures. The polyhedral model is a powerful mathematical framework for programs to exploit automatic parallelization and locality optimization, playing an important role in the field of optimizing compilers. A long standing limitation of the model has been its restriction to static control affine programs, resulting in an emergent demand for the support of non-affine extensions. This is particularly acute in the context of heterogeneous architectures where a variety of computation kernels need to be analyzed and transformed to match the constraints of hardware accelerators and to manage data transfers across memory spaces. We explore multiple non-affine extensions of the polyhedral model, in the context of a welldefined intermediate language combining affine and syntactic elements. On the one hand, we explain how transformations and code generation for loops with non-affine, data-dependent and dynamic loop bounds are integrated into a polyhedral framework, extending the applicable domain of polyhedral compilation in the realm of non-affine applications. On the other hand, we describe the integration of overlapped tiling for stencil computations into a general polyhedral framework, automating non-affine transformations in polyhedral compilation. We evaluate our techniques on both CPU and GPU architectures, validating the effectiveness of the optimizations by conducting an in-depth performance comparison with state-of-the-art frameworks and manually-written libraries.
Complete list of metadatas

Cited literature [140 references]  Display  Hide  Download
Contributor : Abes Star :  Contact
Submitted on : Wednesday, February 26, 2020 - 5:17:39 PM
Last modification on : Friday, October 23, 2020 - 4:52:54 PM
Long-term archiving on: : Wednesday, May 27, 2020 - 8:02:19 PM


Version validated by the jury (STAR)


  • HAL Id : tel-01988073, version 2



Jie Zhao. A combined language and polyhedral approach to heterogeneous parallelism. Distributed, Parallel, and Cluster Computing [cs.DC]. PSL Research University, 2018. English. ⟨NNT : 2018PSLEE062⟩. ⟨tel-01988073v2⟩



Record views


Files downloads