Publication

Towards representing OpenMP in SPMD IR: Concepts and realization in MLIR

  • Darstellungskonzepte für OpenMP in der SPMD IR und ihre Realisierung in MLIR

Malmendier, Frederic J.; Müller, Matthias S. (Thesis advisor); Lankes, Stefan (Thesis advisor); Burak, Semih (Consultant)

Aachen : RWTH Aachen University (2026)
Bachelor Thesis

Bachelorarbeit, RWTH Aachen University, 2026

Abstract

This thesis extends the SPMD IR within the MLIR framework by incorporating the OpenMP programming model. The original IR provides an abstraction layer for API-based parallel programming models (PPMs) that share a Single Program, Multiple Data (SPMD) execution style. At its core, the abstraction is derived from MPI concepts and relies on explicit communication and synchronization mechanisms within distributed memory domains. In contrast, OpenMP's directive-based model synchronizes execution with the program's control flow and handles communication via shared memory. To bridge this semantic gap, this work presents an initial design and a prototype implementation for representing OpenMP within the IR. Specifically, a dedicated conversion pass models OpenMP directives as collective, region-based operations, mapping parallel and worksharing-loop regions to newly introduced operations in the spmd dialect. The extension was evaluated by applying the IR's existing Collectives Verification pass to a specifically created benchmark suite targeting OpenMP synchronization errors. The results demonstrate that the IR can successfully verify OpenMP programs without relying on model-specific abstractions.

Institutions

  • Chair of High Performance Computing (Computer Science 12) [123010]