English
Related papers

Related papers: An approach to performance portability through gen…

200 papers

The usual advantages put forward for including nullability declarations in the type systems of programming languages are that they improve program reliability or performance. But there is another, entirely different, reason for doing so. In…

Programming Languages · Computer Science 2011-08-25 William Harrison , Tim Walsh , Paul Biggar

We present a unified programming model for heterogeneous computing systems. Such systems integrate multiple computing accelerators and memory units to deliver higher performance than CPU-centric systems. Although heterogeneous systems have…

Emerging Technologies · Computer Science 2024-04-18 Zixuan Wang , Jishen Zhao

This work unifies insights from the systems and functional programming communities, in order to enable compositional reasoning about software which is nonetheless efficiently realizable in hardware. It exploits a correspondence between…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-03-18 Thomas Dickerson

Heterogeneity is omnipresent in today's commodity computational systems, which comprise at least one multi-core Central Processing Unit (CPU) and one Graphics Processing Unit (GPU). Nonetheless, all this computing power is not being…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-02-18 Hervé Paulino , Eduardo Marques

As computer systems become more and more complex, software and tools lag more and more behind. This is especially true for scientific software that often demands high performance, and thus needs to take advantage of parallelisms, memory…

Computers and Society · Computer Science 2013-09-11 Anne C. Elster

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

Given the ever-increasing complexity of adaptable software systems and their commonly hidden internal information (e.g., software runs in the public cloud), machine learning based performance modeling has gained momentum for evaluating,…

Software Engineering · Computer Science 2019-03-27 Tao Chen

Software maintainability is essential for long-term success in the software industry. Despite widespread evidence of the high costs associated with poor maintainability, market pressure drives many organizations to prioritize short-term…

Software Engineering · Computer Science 2024-12-10 Markus Borg , Amogha Udayakumar , Adam Tornhill

It is becoming increasingly clear that, if a useful device for quantum computation will ever be built, it will be embodied by a classical computing machine with control over a truly quantum subsystem, this apparatus performing a mixture of…

Programming Languages · Computer Science 2009-11-07 S. Bettelli , L. Serafini , T. Calarco

As scientific applications extend to the simulation of more and more complex systems, they involve an increasing number of abstraction levels, at each of which errors can emerge and across which they can propagate; tools for correctness…

Software Engineering · Computer Science 2011-01-18 Eloisa Bentivegna , Gabrielle Allen , Oleg Korobkin , Erik Schnetter

Computational complexity poses a significant challenge in wireless communication. Most existing attempts aim to reduce it through algorithm-specific approaches. However, the precision of computing, which directly relates to both computing…

Signal Processing · Electrical Eng. & Systems 2025-09-01 Kaixuan Bao , Wei Xu , Xiaohu You , Derrick Wing Kwan Ng

With the appearance of the heterogeneous platform OpenPower,many-core accelerator devices have been coupled with Power host processors for the first time. Towards utilizing their full potential, it is worth investigating performance…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-11-07 Erik Zenker , René Widera , Axel Huebl , Guido Juckeland , Andreas Knüpfer , Wolfgang E. Nagel , Michael Bussmann

The use of reconfigurable computing, and FPGAs in particular, to accelerate computational kernels has the potential to be of great benefit to scientific codes and the HPC community in general. However, whilst recent advanced in FPGA tooling…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-10-06 Nick Brown , David Dolman

Machine learning-based performance models are increasingly being used to build critical job scheduling and application optimization decisions. Traditionally, these models assume that data distribution does not change as more samples are…

Machine Learning · Computer Science 2023-10-27 Ray A. O. Sinurat , Anurag Daram , Haryadi S. Gunawi , Robert B. Ross , Sandeep Madireddy

Recently, cloud systems composed of heterogeneous hardware have been increased to utilize progressed hardware power. However, to program applications for heterogeneous hardware to achieve high performance needs much technical skill and is…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-09-18 Yoji Yamato

The rapid development in computing technology has paved the way for directive-based programming models towards a principal role in maintaining software portability of performance-critical applications. Efforts on such models involve a least…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-04-28 Kazuaki Matsumura , Simon Garcia De Gonzalo , Antonio J. Peña

We present a scalable, robust approach to creating quantum programs of arbitrary size and complexity. The approach is based on the true abstraction of the problem. The quantum program is expressed in terms of a high-level model together…

Generative Programming (GP) is a computing paradigm allowing automatic creation of entire software families utilizing the configuration of elementary and reusable components. GP can be projected on different technologies, e.g.…

Human-Computer Interaction · Computer Science 2007-05-23 Max Schlee , Jean Vanderdonckt

Future extreme-scale computer systems may expose silent data corruption (SDC) to applications, in order to save energy or increase performance. However, resilience research struggles to come up with useful abstract programming models for…

Mathematical Software · Computer Science 2014-01-15 James Elliott , Mark Hoemmen , Frank Mueller

Probabilistic programming is considered as a framework, in which basic components of cognitive architectures can be represented in unified and elegant fashion. At the same time, necessity of adopting some component of cognitive…

Artificial Intelligence · Computer Science 2016-05-05 Alexey Potapov