English
Related papers

Related papers: Performance Evaluation of Parallel Message Passing…

200 papers

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

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

Message Passing Interface (MPI) plays a crucial role in distributed memory parallelization across multiple nodes. However, parallelizing MPI code manually, and specifically, performing domain decomposition, is a challenging, error-prone…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-08-31 Nadav Schneider , Tal Kadosh , Niranjan Hasabnis , Timothy Mattson , Yuval Pinter , Gal Oren

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 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

We discuss the use of both MPI and OpenMP in the teaching of senior undergraduate and junior graduate classes in parallel programming. We briefly introduce the OpenMP standard and discuss why we have chosen to use it in parallel programming…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 Yi Pan

The hybrid MPI+X programming paradigm, where X refers to threads or GPUs, has gained prominence in the high-performance computing arena. This corresponds to a trend of system architectures growing more heterogeneous. The current MPI…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-08-31 Hui Zhou , Ken Raffenetti , Yanfei Guo , Rajeev Thakur

MPI+threads is gaining prominence as an alternative to the traditional MPI everywhere model in order to better handle the disproportionate increase in the number of cores compared with other on-node resources. However, the communication…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-05-04 Rohit Zambre , Aparna Chandramowlishwaran , Pavan Balaji

Multicore has emerged as a typical architecture model since its advent and stands now as a standard. The trend is to increase the number of cores and improve the performance of the memory system. Providing an efficient multicore…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-01-22 Claude Tadonki

OpenMP has been the de facto standard for single node parallelism for more than a decade. Recently, asynchronous many-task runtime (AMT) systems have increased in popularity as a new programming paradigm for high performance computing…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-02-20 Tianyi Zhang , Shahrzad Shirzad , Bibek Wagle , Adrian S. Lemoine , Patrick Diehl , Hartmut Kaiser

The increasing number of processing elements and decreas- ing memory to core ratio in modern high-performance platforms makes efficient strong scaling a key requirement for numerical algorithms. In order to achieve efficient scalability on…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-01-14 Michael Lange , Gerard Gorman , Michele Weiland , Lawrence Mitchell , James Southern

These lecture notes are designed to accompany an imaginary, virtual, undergraduate, one or two semester course on fundamentals of Parallel Computing as well as to serve as background and reference for graduate courses on High-Performance…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-10-02 Jesper Larsson Träff

We present a simple library which equips MPI implementations with truly asynchronous non-blocking point-to-point operations, and which is independent of the underlying communication infrastructure. It utilizes the MPI profiling interface…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-02-19 Markus Wittmann , Georg Hager , Thomas Zeiser , Gerhard Wellein

Upcoming HPC clusters will feature hybrid memories and storage devices per compute node. In this work, we propose to use the MPI one-sided communication model and MPI windows as unique interface for programming memory and storage. We…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-10-10 Sergio Rivas-Gomez , Roberto Gioiosa , Ivy Bo Peng , Gokcen Kestor , Sai Narasimhamurthy , Erwin Laure , Stefano Markidis

Modern OpenMP threading techniques are used to convert the MPI-only Hartree-Fock code in the GAMESS program to a hybrid MPI/OpenMP algorithm. Two separate implementations that differ by the sharing or replication of key data structures…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-08-15 Vladimir Mironov , Yuri Alexeev , Kristopher Keipert , Michael D'mello , Alexander Moskovsky , Mark S. Gordon

We present four high performance hybrid sorting methods developed for various parallel platforms: shared memory multiprocessors, distributed multiprocessors, and clusters taking advantage of existence of both shared and distributed memory.…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-03-04 Thoria Alghamdi , Gita Alaghband

Parallel computing is a standard approach to achieving high-performance computing (HPC). Three commonly used methods to implement parallel computing include: 1) applying multithreading technology on single-core or multi-core CPUs; 2)…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-09-18 Xinyao Yi

In the high performance computing (HPC) domain, performance variability is a major scalability issue for parallel computing applications with heavy synchronization and communication. In this paper, we present an experimental performance…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-11-10 Minyu Cui , Nikela Papadopoulou , Miquel Pericàs

Some OpenMP multi-threaded applications increasingly suffer from performance anomaly owning to shared resource contention as well as software- and hardware-related problems. Such performance anomaly can result in failure and inefficiencies,…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-11-06 Weidong Wang , Wangda Luo

Given an array $\mathcal{A}$ of $n$ elements and a value $2 \leq k \leq n$, a frequent item or $k$-majority element is an element occurring in $\mathcal{A}$ more than $n/k$ times. The $k$-majority problem requires finding all of the…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-01-12 Massimo Cafaro , Marco Pulimeno , Italo Epicoco , Giovanni Aloisio