Polygeist: Raising C to Polyhedral MLIR

William S. Moses, Lorenzo Chelini, Ruizhe Zhao, Oleksandr Zinenko

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

We present Polygeist, a new compilation flow that connects the MLIR compiler infrastructure to cutting edge polyhedral optimization tools. It consists of a C and C++ frontend capable of converting a broad range of existing codes into MLIR suitable for polyhedral transformation and a bi-directional conversion between MLIR and OpenScop exchange format. The Polygeist/MLIR intermediate representation featuring high-level (affine) loop constructs and n-D arrays embedded into a single static assignment (SSA) substrate enables an unprecedented combination of SSA-based and polyhedral optimizations. We illustrate this by proposing and implementing two extra transformations: statement splitting and reduction parallelization. Our evaluation demonstrates that Polygeist outperforms on average both an LLVM IR-level optimizer (Polly) and a source-to-source state-of-the-art polyhedral compiler (Pluto) when exercised on the Polybench/C benchmark suite in sequential (2.53x vs 1.41x, 2.34x) and parallel mode (9.47x vs 3.26x, 7.54x) thanks to the new representation and transformations.

Original languageEnglish (US)
Title of host publicationProceedings - 30th International Conference on Parallel Architectures and Compilation Techniques, PACT 2021
EditorsJaejin Lee, Albert Cohen
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages45-59
Number of pages15
ISBN (Electronic)9781665442787
DOIs
StatePublished - 2021
Externally publishedYes
Event30th International Conference on Parallel Architectures and Compilation Techniques, PACT 2021 - Virtual, Onliine, United States
Duration: Sep 26 2021Sep 29 2021

Publication series

NameParallel Architectures and Compilation Techniques - Conference Proceedings, PACT
Volume2021-September
ISSN (Print)1089-795X

Conference

Conference30th International Conference on Parallel Architectures and Compilation Techniques, PACT 2021
Country/TerritoryUnited States
CityVirtual, Onliine
Period9/26/219/29/21

ASJC Scopus subject areas

  • Software
  • Theoretical Computer Science
  • Hardware and Architecture

Fingerprint

Dive into the research topics of 'Polygeist: Raising C to Polyhedral MLIR'. Together they form a unique fingerprint.

Cite this