English
Related papers

Related papers: Extending the Message Passing Interface (MPI) with…

200 papers

HPC systems keep growing in size to meet the ever-increasing demand for performance and computational resources. Apart from increased performance, large scale systems face two challenges that hinder further growth: energy efficiency and…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-01-06 Ioannis Vardas , Manolis Ploumidis , Manolis Marazakis

Hybrid MPI+threads programming is gaining prominence as an alternative to the traditional "MPI everywhere'" model to better handle the disproportionate increase in the number of cores compared with other on-node resources. Current…

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

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

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

MDMP is a new parallel programming approach that aims to provide users with an easy way to add parallelism to programs, optimise the message passing costs of traditional scientific simulation algorithms, and enable existing MPI-based…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-04-30 Adrian Jackson , Par Strand

We present a simple and easy to apply methodology for using high-level self-submitting parallel job queues in an MPI environment. Using C++, we implemented a library of functions, MPQueue, both for testing our concepts and for use in real…

Distributed, Parallel, and Cluster Computing · Computer Science 2012-04-23 John M. Neuberger , Nandor Sieben , James W. Swift

Network library APIs have historically been developed with the emphasis on data movement, placement, and communication semantics. Many communication semantics are available across a large variety of network libraries, such as send-receive,…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-06-02 Luis E. Peña , Wenbin Lu , Pavel Shamis , Steve Poole

The Message Passing Interface (MPI) is widely used in parallel, high-performance programming, yet writing bug-free software that uses MPI remains difficult. We introduce DafnyMPI, a novel, scalable approach to formally verifying MPI…

Programming Languages · Computer Science 2025-12-23 Aleksandr Fedchin , Antero Mejr , Hari Sundar , Jeffrey S. Foster

Machine Learning and Data Mining (MLDM) algorithms are becoming increasingly important in analyzing large volume of data generated by simulations, experiments and mobile devices. With increasing data volume, distributed memory systems (such…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-08-21 Abhinav Vishnu , Charles Siegel , Jeffrey Daily

Distributed memory programming is the established paradigm used in high-performance computing (HPC) systems, requiring explicit communication between nodes and devices. When FPGAs are deployed in distributed settings, communication is…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-08-07 Tiziano De Matteis , Johannes de Fine Licht , Jakub Beránek , Torsten Hoefler

MLI is an Application Programming Interface designed to address the challenges of building Machine Learn- ing algorithms in a distributed setting based on data-centric computing. Its primary goal is to simplify the development of…

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

The Message Passing Interface specification (MPI) defines a portable message-passing API used to program parallel computers. MPI programs manifest a number of challenges on what concerns correctness: sent and expected values in…

Programming Languages · Computer Science 2015-08-21 César Santos , Francisco Martins , Vasco Thudichum Vasconcelos

Heterogeneous memory technologies are increasingly important instruments in addressing the memory wall in HPC systems. While most are deployed in single node setups, CXL.mem is a technology that implements memories that can be attached to…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-12-10 Stepan Vanecek , Matthew Turner , Manisha Gajbe , Matthew Wolf , Martin Schulz

MPI accomplishes portable, standardized message-passing between processes by exposing a standard API that hides the implementation of the underlying mechanism for message passing. Until now, checkpointing an MPI program required knowledge…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-03-28 Gregory Michael Price

Fault-tolerance has always been an important topic when it comes to running massively parallel programs at scale. Statistically, hardware and software failures are expected to occur more often on systems gathering millions of computing…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-06-13 Julien Adam , Maxime Kermarquer , Jean-Baptiste Besnard , Leonardo Bautista-Gomez , Marc Perache , Patrick Carribault , Julien Jaeger , Allen D. Malony , Sameer Shende

The evolution of architectures, programming models, and algorithms is driving communication towards greater asynchrony and concurrency, usually in multithreaded environments. We present LCI, a communication library designed for efficient…

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

It is commonly agreed that highly parallel software on Exascale computers will suffer from many more runtime failures due to the decreasing trend in the mean time to failures (MTTF). Therefore, it is not surprising that a lot of research is…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-05-19 Faisal Shahzad , Moritz Kreutzer , Thomas Zeiser , Rui Machado , Andreas Pieper , Georg Hager , Gerhard Wellein

Scheduling languages express to a compiler a sequence of optimizations to apply. Compilers that support a scheduling language interface allow exploration of compiler optimizations, i.e., exploratory compilers. While scheduling languages…

Programming Languages · Computer Science 2024-10-29 Mary Hall , Cosmin Oancea , Anne C. Elster , Ari Rasch , Sameeran Joshi , Amir Mohammad Tavakkoli , Richard Schulze

Dynamic scaling aims to elastically change the number of processes during runtime to tune the performance of the distributed applications. This report briefly presents a performance evaluation of MPI process provisioning / de-provisioning…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-01-01 Masatoshi Hanai , Georgios Theodoropoulos