English
Related papers

Related papers: MPIs Language Bindings are Holding MPI Back

200 papers

Interval computation is widely used to certify computations that use floating point operations to avoid pitfalls related to rounding error introduced by inaccurate operations. Despite its popularity and practical benefits, support for…

Mathematical Software · Computer Science 2023-05-29 Xuan Tang , Zachary Ferguson , Teseo Schneider , Denis Zorin , Shoaib Kamil , Daniele Panozzo

Generic programming is an effective methodology for developing reusable software libraries. Many programming languages provide generics and have features for describing interfaces, but none completely support the idioms used in generic…

Programming Languages · Computer Science 2007-08-17 Jeremy G. Siek , Andrew Lumsdaine

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 , Philipp Samfass , Christoph Niethammer , José Gracia , George Bosilca

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

MPI's derived datatypes (DDTs) promise easier, copy-free communication of non-contiguous data, yet their practical performance remains debated and is often reported only for a single MPI stack. We present a cross-implementation assessment…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-11-19 Temitayo Adefemi

We present Matrix Distributed Processing, a C++ library for fast development of efficient parallel algorithms. MDP is based on MPI and consists of a collection of C++ classes and functions such as lattice, site and field. Once an algorithm…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 Massimo Di Pierro

MPI applications begin with a fixed number of rank and, by default, the rank remains constant throughout the application's lifetime. The developer can choose to increase the rank by dynamically spawning MPI processes. However doing this…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-05-18 Sumeet Gajjar , Saurabh Vaidya

As part of a research on a novel in-process multiprogramming-language interoperability system, this study investigates the interoperability and usage of multiple programming languages within a large dataset of GitHub projects and Stack…

Programming Languages · Computer Science 2024-11-14 Tsvi Cherny-Shahar , Amiram Yehudai

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

Modern platforms used for high-performance computing (HPC) include machines with both general-purpose CPUs, and "accelerators", often in the form of graphical processing units (GPUs). StarPU is a C library to exploit such platforms. It…

Mathematical Software · Computer Science 2013-04-11 Ludovic Courtès

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

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

The C and C++ programming languages are widely used for the implementation of software in critical systems. They are complex languages with subtle features and peculiarities that might baffle even the more expert programmers. Hence, the…

Programming Languages · Computer Science 2022-12-29 Roberto Bagnara , Abramo Bagnara , Patricia M. Hill

Although, many scientists and engineers use Octave or MATLAB as their preferred programming language, dynamic nature of these languages can lead to slower running-time of programs written in these languages compared to programs written in…

Programming Languages · Computer Science 2015-03-19 Hamid A. Toussi

The power consumption of supercomputers is a major challenge for system owners, users, and society. It limits the capacity of system installations, it requires large cooling infrastructures, and it is the cause of a large carbon footprint.…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-09-30 Daniele Cesarini , Andrea Bartolini , Andrea Borghesi , Carlo Cavazzoni , Mathieu Luisier , Luca Benini

Parallel hardware makes concurrency mandatory for efficient program execution. However, writing concurrent software is both challenging and error-prone. C++11 provides standard facilities for multiprogramming, such as atomic operations with…

Programming Languages · Computer Science 2013-01-07 Dominik Charousset , Thomas C. Schmidt

The Julia programming language has evolved into a modern alternative to fill existing gaps in scientific computing and data science applications. Julia leverages a unified and coordinated single-language and ecosystem paradigm and has a…

Programs written in C/C++ often include inline assembly: a snippet of architecture-specific assembly code used to access low-level functionalities that are impossible or expensive to simulate in the source language. Although inline assembly…

Programming Languages · Computer Science 2024-09-04 Paulo Emílio de Vilhena , Ori Lahav , Viktor Vafeiadis , Azalea Raad

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

Software development is shifting from traditional programming to AI-integrated applications that leverage generative AI and large language models (LLMs) during runtime. However, integrating LLMs remains complex, requiring developers to…

‹ Prev 1 3 4 5 6 7 10 Next ›