English
Related papers

Related papers: MPIs Language Bindings are Holding MPI Back

200 papers

Python bindings are a critical bridge between high-performance C++ libraries and the flexibility of Python, enabling rapid prototyping, reproducible experiments, and integration with simulation and learning frameworks in robotics research.…

Robotics · Computer Science 2026-03-06 Weihang Guo , Theodoros Tyrovouzis , Lydia E. Kavraki

The MPI standard has long included one-sided communication abstractions through the MPI Remote Memory Access (RMA) interface. Unfortunately, the MPI RMA chapter in the 4.0 version of the MPI standard still contains both well-known and…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-11-17 Joseph Schuchart , Christoph Niethammer , José Gracia , George Bosilca

Large software systems often comprise programs written in different programming languages. In the case when cross-language interoperability is accomplished with a Foreign Function Interface (FFI), for example pybind11, Boost.Python,…

Software Engineering · Computer Science 2019-06-21 Damian M. Lyons , Saba B. Zahra , Thomas M. Marshall

Library migration happens when a library can not meet the project's requirements and is non-trivial to accomplish. To mitigate the problem, substantial efforts have been devoted to understanding its characteristics and recommending…

Software Engineering · Computer Science 2025-07-08 Haiqiao Gu , Yiliang Zhao , Kai Gao , Minghui Zhou

Fortran is the lingua franca of HPC code development and as such it is crucial that we as a community have open source Fortran compilers capable of generating high performance executables. Flang is LLVM's Fortran compiler and leverages MLIR…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-09-30 Nick Brown

MPI collective operations provide a standardized interface for performing data movements within a group of processes. The efficiency of collective communication operations depends on the actual algorithm, its implementation, and the…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-08-11 Sascha Hunold , Alexandra Carpen-Amarie

MPI implementations commonly rely on explicit memory-copy operations, incurring overhead from redundant data movement and buffer management. This overhead notably impacts HPC workloads involving intensive inter-processor communication. In…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-10-17 Miryeong Kwon , Donghyun Gouk , Hyein Woo , Junhee Kim , Jinwoo Baek , Kyungkuk Nam , Sangyoon Ji , Jiseon Kim , Hanyeoreum Bae , Junhyeok Jang , Hyunwoo You , Junseok Moon , Myoungsoo Jung

The Message Passing Interface (MPI) has been extremely successful as a portable way to program high-performance parallel computers. This success has occurred in spite of the view of many that message passing is difficult and that other…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 William D. Gropp

GPU-enhanced architectures are now dominant in HPC systems, but message-passing communication involving GPUs with MPI has proven to be both complex and expensive, motivating new approaches that lower such costs. We compare and contrast…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-08-01 Patrick G. Bridges , Anthony Skjellum , Evan D. Suggs , Derek Schafer , Purushotham V. Bangalore

Mathematical software has traditionally been built in the form of "packages" that build on each other. A substantial fraction of these packages is written in C++ and, as a consequence, the interface of a package is described in the form of…

Software Engineering · Computer Science 2026-05-07 Wolfgang Bangerth

Continuous integration (CI) has become a ubiquitous practice in modern software development, with major code hosting services offering free automation on popular platforms. CI offers major benefits, as it enables detecting bugs in code…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-04-03 Todd Gamblin , Daniel S. Katz

The imperative need to scale computation across numerous nodes highlights the significance of efficient parallel computing, particularly in the realm of Message Passing Interface (MPI) integration. The challenging parallel programming task…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-04-24 Nadav Schneider , Niranjan Hasabnis , Vy A. Vo , Tal Kadosh , Neva Krien , Mihai Capotă , Guy Tamir , Ted Willke , Nesreen Ahmed , Yuval Pinter , Timothy Mattson , Gal Oren

Faults in high-performance systems are expected to be very large in the current exascale computing era. To compensate for a higher failure rate, the standard checkpoint/restart technique would need to create checkpoints at a much higher…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-04-15 Sarthak Joshi , Sathish Vadhiyar

There is new momentum behind an interoperable ABI for MPI, which will be a major component of MPI-5. This capability brings true separation of concerns to a running MPI computation. The linking and compilation of an MPI application becomes…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-03-17 Yao Xu , Grace Nansamba , Anthony Skjellum , Gene Cooperman

Domain-specific languages (DSLs) are both pervasive and powerful, but remain difficult to integrate into large projects. As a result, while DSLs can bring distinct advantages in performance, reliability, and maintainability, their use often…

Programming Languages · Computer Science 2020-10-19 Hal Finkel , Alexander McCaskey , Tobi Popoola , Dmitry Lyakh , Johannes Doerfert

Interoperability is the ability of a programming language to work with systems based on different languages and paradigms. These days, many widely used high-level language impementations provide access to external functionalities. In this…

Programming Languages · Computer Science 2017-03-16 Manuel Mazzara

Newer technologies - programming languages, environments, libraries - change very rapidly. However, various internal and external constraints often prevent projects from quickly adopting to these changes. Customers may require specific…

Software Engineering · Computer Science 2024-05-14 Gábor Antal , Dávid Havas , István Siket , Árpád Beszédes , Rudolf Ferenc , József Mihalicza

This work presents an extension to MPI supporting the one-sided communication model and window allocations in storage. Our design transparently integrates with the current MPI implementations, enabling applications to target MPI windows in…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-04-28 Sergio Rivas-Gomez , Stefano Markidis , Ivy Bo Peng , Erwin Laure , Gokcen Kestor , Roberto Gioiosa

Historically, programming language semantics has focused on assigning a precise mathematical meaning to programs. That meaning is a function from the program's input domain to its output domain determined solely by its syntactic structure.…

Replacing ANSI C language with other modern programming languages such as Python or Java may be an actual debate topic in technical universities. Researchers whose primary interests are not in programming area seem to prefer modern and…

Computers and Society · Computer Science 2016-11-17 Lidia Dobrescu