English
Related papers

Related papers: MPIs Language Bindings are Holding MPI Back

200 papers

There has been a growing interest in developing multimodal machine translation (MMT) systems that enhance neural machine translation (NMT) with visual knowledge. This problem setup involves using images as auxiliary information during…

Computer Vision and Pattern Recognition · Computer Science 2023-08-30 Devaansh Gupta , Siddhant Kharbanda , Jiawei Zhou , Wanhua Li , Hanspeter Pfister , Donglai Wei

Comparison of programming languages is a common topic of discussion among software engineers. Multiple programming languages are designed, specified, and implemented every year in order to keep up with the changing programming paradigms,…

Programming Languages · Computer Science 2015-04-06 Zakaria Alomari , Oualid El Halimi , Kaushik Sivaprasad , Chitrang Pandit

A portion of the HEP community has perceived the need for a minimization package written in C++ and taking advantage of the Object-Oriented nature of that langauge. To be acceptable for HEP, such a package must at least encompass all the…

High Energy Physics - Phenomenology · Physics 2008-11-26 Mark Fischler , David Sachs

The Language Server Protocol (LSP) changed the field of Integrated Development Environments(IDEs), as it decouples core (programming) language features functionality from editor smarts, thus lowering the effort required to extend an IDE to…

Software Engineering · Computer Science 2021-08-09 Jonas Kjær Rask , Frederik Palludan Madsen , Nick Battle , Hugo Daniel Macedo , Peter Gorm Larsen

Performance, genericity and flexibility are three valuable qualities for scientific environments that tend to be antagonistic. C++ provides excellent support for both performances and genericity thanks to its support for (class and…

Software Engineering · Computer Science 2016-11-04 Akim Demaille

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

Threads are a convenient and modular abstraction for writing concurrent programs, but often fairly expensive. The standard alternative to threads, event-loop programming, allows much lighter units of concurrency, but leads to code that is…

Programming Languages · Computer Science 2011-02-07 Gabriel Kerneis , Juliusz Chroboczek

The design and implementation of precise static analyzers for significant fragments of modern imperative languages like C, C++, Java and Python is a challenging problem. In this paper, we consider a core imperative language that has several…

Programming Languages · Computer Science 2007-06-28 Roberto Bagnara , Patricia M. Hill , Andrea Pescetti , Enea Zaffanella

ROOT has several features which interact with libraries and require implicit header inclusion. This can be triggered by reading or writing data on disk, or user actions at the prompt. Often, the headers are immutable, and reparsing is…

Software Engineering · Computer Science 2020-08-26 Yuka Takahashi , Oksana Shadura , Vassil Vassilev

We present programming techniques to illustrate the facilities and principles of C++ generic programming using concepts. Concepts are C++'s way to express constraints on generic code. As an initial example, we provide a simple type system…

Programming Languages · Computer Science 2025-10-13 Bjarne Stroustrup

With the growing capabilities of large language models (LLMs), they are increasingly applied in areas like intelligent customer service, code generation, and knowledge management. Natural language (NL) prompts act as the ``APIs'' for…

Software Engineering · Computer Science 2025-08-12 Zhenchang Xing , Yang Liu , Zhuo Cheng , Qing Huang , Dehai Zhao , Daniel Sun , Chenhua Liu

Data streams are a sequence of data flowing between source and destination processes. Streaming is widely used for signal, image and video processing for its efficiency in pipelining and effectiveness in reducing demand for memory. The goal…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-08-07 Ivy Bo Peng , Stefano Markidis , Roberto Gioiosa , Gokcen Kestor , Erwin Laure

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 object oriented programming paradigm is widely used in science and engineering. Many open and commercial libraries are written in C++ and increasingly provide bindings to Python, which is much easier to learn, but still partly…

Programming Languages · Computer Science 2023-12-22 Markus Kloimwieder , Christoph Gadermaier

MPI has been ubiquitously deployed in flagship HPC systems aiming to accelerate distributed scientific applications running on tens of hundreds of processes and compute nodes. Maintaining the correctness and integrity of MPI application…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-02-16 Luanzheng Guo , Giorgis Georgakoudis , Konstantinos Parasyris , Ignacio Laguna , Dong Li

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

In this study, we present a novel dataset for training machine learning models translating between OpenMP Fortran and C++ code. To ensure reliability and applicability, the dataset is created from a range of representative open-source…

Software Engineering · Computer Science 2023-09-20 Bin Lei , Caiwen Ding , Le Chen , Pei-Hung Lin , Chunhua Liao

The reference implementation of Cartesian Genetic Programming (CGP) was written in the C programming language. C inherently follows a procedural programming paradigm, which entails challenges in providing a reusable and scalable…

Neural and Evolutionary Computing · Computer Science 2024-06-14 Roman Kalkreuth , Thomas Baeck

Application development for distributed computing "Grids" can benefit from tools that variously hide or enable application-level management of critical aspects of the heterogeneous environment. As part of an investigation of these issues,…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 N. T. Karonis , B. Toonen , I. Foster

Many Internet of Things and embedded projects are event-driven, and therefore require asynchronous and concurrent programming. Current proposals for C++20 suggest that coroutines will have native language support. It is timely to survey the…

Software Engineering · Computer Science 2019-06-11 Bruce Belson , Jason Holdsworth , Wei Xiang , Bronson Philippa