English
Related papers

Related papers: MPI Progress For All

200 papers

The Message Passing Interface (MPI) is the de facto standard message-passing infrastructure for developing parallel applications. Two decades after the first version of the library specification, MPI-based applications are nowadays…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-12-11 Eduardo R. B. Marques , Francisco Martins , Vasco T. Vasconcelos , Nicholas Ng , Nuno Martins

The Message-Passing Interface (MPI) and C++ form the backbone of high-performance computing, but MPI only provides C and Fortran bindings. While this offers great language interoperability, high-level programming languages like C++ make…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-11-13 Tim Niklas Uhl , Matthias Schimek , Lukas Hübner , Demian Hespe , Florian Kurpicz , Christoph Stelz , Peter Sanders

Message logging protocols are enablers of local rollback, a more efficient alternative to global rollback, for fault tolerant MPI applications. Until now, message logging MPI implementations have incurred the overheads of a redesign and…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-05-09 Kiril Dichev , Dimitrios S. Nikolopoulos

MPI+Threads, embodied by the MPI/OpenMP hybrid programming model, is a parallel programming paradigm where threads are used for on-node shared-memory parallelization and MPI is used for multi-node distributed-memory parallelization. OpenMP…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-01-31 Hui Zhou , Ken Raffenetti , Junchao Zhang , Yanfei Guo , Rajeev Thakur

Program correctness is one of the most difficult challenges in parallel programming. Message Passing Interface MPI is widely used in writing parallel applications. Since MPI is not a compiled language, the programmer will be enfaced with…

Programming Languages · Computer Science 2013-11-05 Alaa I. El-Nashar , Nakamura Masaki

In the exascale computing era, optimizing MPI collective performance in high-performance computing (HPC) applications is critical. Current algorithms face performance degradation due to system call overhead, page faults, or data-copy…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-05-19 Jiajun Huang , Kaiming Ouyang , Yujia Zhai , Jinyang Liu , Min Si , Ken Raffenetti , Hui Zhou , Atsushi Hori , Zizhong Chen , Yanfei Guo , Rajeev Thakur

Application development for distributed computing "Grids" can benefit from tools that variously hide or enable application-level management of critical aspects of the heterogeneous environment. As part of an investigation of these issues,…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 N. T. Karonis , B. Toonen , I. Foster

Running parallel applications requires special and expensive processing resources to obtain the required results within a reasonable time. Before parallelizing serial applications, some analysis is recommended to be carried out to decide…

Software Engineering · Computer Science 2011-03-30 Alaa Ismail Elnashar

Message Passing Interface (MPI) is a foundational programming model for high-performance computing. MPI libraries traditionally employ network interconnects (e.g., Ethernet and InfiniBand) and network protocols (e.g., TCP and RoCE) with…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-12-16 Xi Wang , Bin Ma , Jongryool Kim , Byungil Koh , Hoshik Kim , Dong Li

Partitioned communication was introduced in MPI 4.0 as a user-friendly interface to support pipelined communication patterns, particularly common in the context of MPI+threads. It provides the user with the ability to divide a global buffer…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-08-15 Thomas Gillis , Ken Raffenetti , Hui Zhou , Yanfei Guo , Rajeev Thakur

Comprehending the performance bottlenecks at the core of the intricate hardware-software interactions exhibited by highly parallel programs on HPC clusters is crucial. This paper sheds light on the issue of automatically asynchronous MPI…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-09-06 Ayesha Afzal , Georg Hager , Stefano Markidis , Gerhard Wellein

MatlabMPI is a Matlab implementation of the Message Passing Interface (MPI) standard and allows any Matlab program to exploit multiple processors. MatlabMPI currently implements the basic six functions that are the core of the MPI…

Astrophysics · Physics 2007-05-23 Jeremy Kepner

Offload of MPI collectives to network devices, e.g., NICs and switches, is being implemented as an effective mechanism to improve application performance by reducing inter- and intra-node communication and bypassing MPI software layers.…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-06-01 Pouya Haghi , Ryan Marshall , Po Hao Chen , Anthony Skjellum , Martin Herbordt

Recent increased interest in Cloud computing emphasizes the need to find an adequate solution to the load-balancing problem in parallel computing -- efficiently running several jobs concurrently on a cluster of shared computers (nodes). One…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-07-02 Adam Lev-Libfeld , Alex Margolin , Amnon Barak

Data streams are a sequence of data flowing between source and destination processes. Streaming is widely used for signal, image and video processing for its efficiency in pipelining and effectiveness in reducing demand for memory. The goal…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-08-07 Ivy Bo Peng , Stefano Markidis , Roberto Gioiosa , Gokcen Kestor , Erwin Laure

MP net is a formal model specifically designed for the field of parallel applications that use a message passing interface. The main idea is to use MP net as a comprehensible way of presenting the actual structure of communication within…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-04-01 Martin Šurkovský

Python has become a dominant programming language for emerging areas like Machine Learning (ML), Deep Learning (DL), and Data Science (DS). An attractive feature of Python is that it provides easy-to-use programming interface while allowing…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-08-26 Nawras Alnaasan , Arpan Jain , Aamir Shafi , Hari Subramoni , Dhabaleswar K Panda

Removing the CPU from the communication fast path is essential to efficient GPU-based ML and HPC application performance. However, existing GPU communication APIs either continue to rely on the CPU for communication or rely on APIs that…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-03-06 Patrick G. Bridges , Derek Schafer , Jack Lange , James B. White , Anthony Skjellum , Evan Suggs , Thomas Hines , Purushotham Bangalore , Matthew G. F. Dosanjh , Whit Schonbein

Asynchronous programming models (APM) are gaining more and more traction, allowing applications to expose the available concurrency to a runtime system tasked with coordinating the execution. While MPI has long provided support for…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-12-23 Joseph Schuchart , Christoph Niethammer , José Gracia

In this paper, we address the problem of designing a distributed application meant to run both classical and asynchronous iterations. MPI libraries are very popular and widely used in the scientific community, however asynchronous iterative…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-07-01 Guillaume Gbikpi-Benissan , Frederic Magoules