Download PDFOpen PDF in browserExtending Polygeist to Generate OpenMP SIMD and GPU MLIR CodeEasyChair Preprint 145466 pages•Date: August 26, 2024AbstractThe state-of-the-art source-to-source polyhedral schedulers annotate loops that can be vectorized with directives, which are merely recommendations to the compiler. However, standard compilers auto-vectorizers may fail to vectorize them because of the complexity of the loops structure or nested statements in the restructured code. The Polygeist compilation framework can generate polyhedral optimized (tiling and parallel loops) MLIR code, but it neither annotates the loops with vectorization directives nor auto-generates the vectorized code. In this paper we describe a proposal to extend Polygeist to generate OpenMP SIMD MLIR code for vector loops. We also want to further extend the code generation process to support GPU MLIR code thereby targeting accelerated architectures. Keyphrases: Compilers, MLIR, heterogeneous architectures, loop optimization, polyhedral techniques
|