Layout-Agnostic MPI Abstraction for Distributed Computing in Modern C++

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Klepl, Jiří, Kruliš, Martin, Brabec, Matyáš
Natura: Preprint
Pubblicazione: 2025
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866917026815016960
author Klepl, Jiří
Kruliš, Martin
Brabec, Matyáš
author_facet Klepl, Jiří
Kruliš, Martin
Brabec, Matyáš
contents Message Passing Interface (MPI) has been a well-established technology in the domain of distributed high-performance computing for several decades. However, one of its greatest drawbacks is a rather ancient pure-C interface. It lacks many useful features of modern languages (namely C++), like basic type-checking or support for generic code design. In this paper, we propose a novel abstraction for MPI, which we implemented as an extension of the C++ Noarr library. It follows Noarr paradigms (first-class layout and traversal abstraction) and offers layout-agnostic design of MPI applications. We also implemented a layout-agnostic distributed GEMM kernel as a case study to demonstrate the usability and syntax of the proposed abstraction. We show that the abstraction achieves performance comparable to the state-of-the-art MPI C++ bindings while allowing for a more flexible design of distributed applications.
format Preprint
id arxiv_https___arxiv_org_abs_2510_16890
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle Layout-Agnostic MPI Abstraction for Distributed Computing in Modern C++
Klepl, Jiří
Kruliš, Martin
Brabec, Matyáš
Distributed, Parallel, and Cluster Computing
Message Passing Interface (MPI) has been a well-established technology in the domain of distributed high-performance computing for several decades. However, one of its greatest drawbacks is a rather ancient pure-C interface. It lacks many useful features of modern languages (namely C++), like basic type-checking or support for generic code design. In this paper, we propose a novel abstraction for MPI, which we implemented as an extension of the C++ Noarr library. It follows Noarr paradigms (first-class layout and traversal abstraction) and offers layout-agnostic design of MPI applications. We also implemented a layout-agnostic distributed GEMM kernel as a case study to demonstrate the usability and syntax of the proposed abstraction. We show that the abstraction achieves performance comparable to the state-of-the-art MPI C++ bindings while allowing for a more flexible design of distributed applications.
title Layout-Agnostic MPI Abstraction for Distributed Computing in Modern C++
topic Distributed, Parallel, and Cluster Computing
url https://arxiv.org/abs/2510.16890