Close

Presentation

This content is available for: Workshop Reg Pass. Upgrade Registration
Fortran Performance Optimisation and Auto-Parallelization by Leveraging MLIR-Based Domain Specific Abstractions in Flang
DescriptionMLIR has become popular since it was open sourced in 2019. A sub-project of LLVM, the flexibility provided by MLIR to represent Intermediate Representations (IR) as dialects at different abstraction levels, to mix these, and to leverage transformations between dialects provides opportunities for automated program optimisation and parallelisation. In addition to general purpose compilers built upon MLIR, domain specific abstractions have also been developed.

In this paper, we explore complimenting the Flang MLIR general purpose compiler by combining with the domain specific Open Earth Compiler’s MLIR stencil dialect. Developing transformations to discover and extracts stencils from Fortran, this specialisation delivers between a 2- and 10-times performance improvement for our benchmarks on a Cray supercomputer compared to using Flang alone. Furthermore, by leveraging existing MLIR transformations we develop an auto-parallelisation approach targeting multi-threaded and distributed memory parallelism, and optimised execution on GPUs, without any modifications to the serial Fortran source code.
Event Type
Workshop
TimeSunday, 12 November 202310:30am - 11am MST
Location601
Tags
Compilers
Heterogeneous Computing
Performance Optimization
Registration Categories
W