Revisiting Communication Software Offloading for MPI+Threads: Reducing Contention and Improving Overlap on Many-Core Systems

Read full text
Authors: Sergej Breiter, Minh Thanh Chung, Karl Fürlinger, Josef Weidendorfer, Dieter August Kranzlmüller
Cited by: 1
References: 18

Abstract

Modern High-Performance Computing (HPC) systems are composed of multiple compute nodes featuring increasingly complex many-core architectures. Combining message passing (MPI) with multi-threading (MPI+Threads) is a promising programming model for achieving high performance on such systems, particularly by enabling the overlap of asynchronous communication and computation. Despite these advantages, MPI+Threads poses significant challenges and several techniques have been proposed for mitagtion, such as fine-grained locking, MPI endpoints, and partitioned communication introduced in recent MPI standards. In this work, we revisit the concept of communication software offloading and present libmmcso, an open-source library. The primary concept of libmmcso is to delegate communication requests to a dedicated thread which manages all MPI operations transparently. Using libmmcso requires no modification to existing MPI libraries or user applications.

Fields of Study & Subjects

Parallel Computing and Optimization Techniques Distributed systems and fault tolerance Distributed and Parallel Computing Systems

Publication details

Journal / source
Proceedings of the Supercomputing Asia and International Conference on High Performance Computing in Asia Pacific Region
Publisher
ACM
Pages
284–295
Publication date
9 January 2026