English
Related papers

Related papers: cMPI: Using CXL Memory Sharing for MPI One-Sided a…

200 papers

Compute eXpress Link (CXL) is emerging as a promising memory interface technology. However, its performance characteristics remain largely unclear due to the limited availability of production hardware. Key questions include: What are the…

Performance · Computer Science 2025-10-14 Xi Wang , Jie Liu , Jianbo Wu , Shuangyan Yang , Jie Ren , Bhanu Shankar , Dong Li

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

In order for High-Performance Computing (HPC) applications with data security requirements to execute in the public cloud, the cloud infrastructure must ensure the privacy and integrity of data. To meet this goal, we consider incorporating…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-10-14 Abu Naser , Mehran Sadeghi Lahijani , Cong Wu , Mohsen Gavahi , Viet Tung Hoang , Zhi Wang , Xin Yuan

The progression of communication in the Message Passing Interface (MPI) is not well defined, yet it is critical for application performance, particularly in achieving effective computation and communication overlap. The opaque nature of MPI…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-07-16 Hui Zhou , Robert Latham , Ken Raffenetti , Yanfei Guo , Rajeev Thakur

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

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

Modern interconnects offer remote direct memory access (RDMA) features. Yet, most applications rely on explicit message passing for communications albeit their unwanted overheads. The MPI-3.0 standard defines a programming interface for…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-07-01 Robert Gerstenberger , Maciej Besta , Torsten Hoefler

The increasing complexity of HPC architectures and the growing adoption of irregular scientific algorithms demand efficient support for asynchronous, multithreaded communication. This need is especially pronounced with Asynchronous…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-08-27 Jiakun Yan , Marc Snir , Yanfei Guo

The cloud infrastructure must provide security for High-Performance Computing (HPC) applications of sensitive data to execute in such an environment. However, supporting security in the communication infrastructure of today's public cloud…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-11-04 Abu Naser , Cong Wu , Mehran Sadeghi Lahijani , Mohsen Gavahi , Viet Tung Hoang , Zhi Wang , Xin Yuan

Two-phase I/O is a well-known strategy for implementing collective MPI-IO functions. It redistributes I/O requests among the calling processes into a form that minimizes the file access costs. As modern parallel computers continue to grow…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-06-23 Qiao Kang , Sunwoo Lee , Kai-yuan Hou , Robert Ross , Ankit Agrawal , Alok Choudhary , Wei-keng Liao

MPI+X has been the de facto standard for distributed memory parallel programming. It is widely used primarily as an explicit two-sided communication model, which often leads to complex and error-prone code. Alternatively, PGAS model…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-09-05 Baodi Shan , Mauricio Araya-Polo , Barbara Chapman

The true costs of high performance computing are currently dominated by software. Addressing these costs requires shifting to high productivity languages such as Matlab. MatlabMPI is a Matlab implementation of the Message Passing Interface…

Astrophysics · Physics 2015-05-26 Jeremy Kepner , Stan Ahalt

ClassdescMP is a distributed memory parallel programming system for use with C++ and MPI. It uses the Classdesc reflection system to ease the task of building complicated messages to be sent between processes. It doesn't hide the underlying…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 Russell K. Standish , Duraid Madina

The Compute Express Link (CXL) is an open industry-standard interconnect between processors and devices such as accelerators, memory buffers, smart network interfaces, persistent memory, and solid-state drives. CXL offers coherency and…

Hardware Architecture · Computer Science 2024-05-09 Debendra Das Sharma , Robert Blankenship , Daniel S. Berger

Hybrid MPI+threads programming is gaining prominence, but, in practice, applications perform slower with it compared to the MPI everywhere model. The most critical challenge to the parallel efficiency of MPI+threads applications is slow…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-06-30 Rohit Zambre , Aparna Chandramowlishwaran

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

The Message Passing Interface (MPI) is the most commonly used application programming interface for process communication on current large-scale parallel systems. Due to the scale and complexity of modern parallel architectures, it is…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-09-05 Sascha Hunold , Alexandra Carpen-Amarie , Felix Donatus Lübbe , Jesper Larsson Träff

Composability is one of seven reasons for the long-standing and continuing success of MPI. Extending MPI by composing its operations with user-level operations provides useful integration with the progress engine and completion notification…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-09-27 Derek Schafer , Sheikh Ghafoor , Daniel Holmes , Martin Ruefenacht , Anthony Skjellum

MPI derived datatypes are an abstraction that simplifies handling of non-contiguous data in MPI applications. These datatypes are recursively constructed at runtime from primitive Named Types defined in the MPI standard. More recently, the…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-04-22 Carl Pearson , Kun Wu , I-Hsin Chung , Jinjun Xiong , Wen-Mei Hwu

Containers represent a convenient way of packing applications with dependencies for easy user-level installation and productivity. When running on supercomputers, it becomes crucial to optimize the containers to exploit the performance…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-07-30 Alfio Lazzaro