English
Related papers

Related papers: Annotation-guided AoS-to-SoA conversions and GPU o…

200 papers

The C programming language and its cousins such as C++ stipulate the static storage of sets of structured data: Developers have to commit to one, invariant data model -- typically a structure-of-arrays (SoA) or an array-of-structs (AoS) --…

Programming Languages · Computer Science 2025-09-16 Pawel K. Radtke , Tobias Weinzierl

Array-of-structures (AoS) to structure-of-arrays (SoA) is a classic compiler transformation that improves memory locality and enables data-parallel execution. Existing AoS-to-SoA transformations primarily target regular, array-based…

Programming Languages · Computer Science 2026-05-05 Vidush Singhal , Mikah Kainen , Artem Pelenitsyn , Michael H. Borkowski , Mike Vollmer , Milind Kulkarni

This study evaluates AoS-to-SoA transformations over reduced-precision data layouts for a particle simulation code on several GPU platforms: We hypothesize that SoA fits particularly well to SIMT, while AoS is the preferred storage format…

Programming Languages · Computer Science 2025-12-08 Pawel K. Radtke , Tobias Weinzierl

The numerical study of physical problems often require integrating the dynamics of a large number of particles evolving according to a given set of equations. Particles are characterized by the information they are carrying such as an…

Computational Physics · Physics 2018-03-14 Holger Homann , Francois Laenen

C++ leans towards a memory-inefficient storage of structs: The compiler inserts padding bits, while it is not able to exploit knowledge about the range of integers, enums or bitsets. Furthermore, the language provides no support for…

Mathematical Software · Computer Science 2025-12-23 Pawel K. Radtke , Cristian G. Barrera-Hinojosa , Mladen Ivkovic , Tobias Weinzierl

Applied research in graph algorithms and combinatorial structures needs comprehensive and versatile software libraries. However, the design and the implementation of flexible libraries are challenging activities. Among the other problems…

Software Engineering · Computer Science 2007-05-23 Maurizio Pizzonia , Giuseppe Di Battista

Data movement between main memory and the CPU is a major bottleneck in parallel data-intensive applications. In response, researchers have proposed using compilers and intermediate representations (IRs) that apply optimizations such as loop…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-09-20 Shoumik Palkar , Matei Zaharia

In this paper we discuss how semantic annotations can be used to introduce mathematical algorithmic information of the underlying imperative code to enable compilers to produce code transformations that will enable better performance. By…

Programming Languages · Computer Science 2016-03-14 Daniel Rubio Bonilla , Colin W. Glass , Jan Kuper

Most machine learning and data analytics applications, including performance engineering in software systems, require a large number of annotations and labelled data, which might not be available in advance. Acquiring annotations often…

Software Engineering · Computer Science 2023-09-21 Peter Samoaa , Linus Aronsson , Antonio Longa , Philipp Leitner , Morteza Haghir Chehreghani

The performance gap between CPU and memory widens continuously. Choosing the best memory layout for each hardware architecture is increasingly important as more and more programs become memory bound. For portable codes that run across…

Conditional branches pose a challenge for code optimisation, particularly in low latency settings. For better performance, processors leverage dedicated hardware to predict the outcome of a branch and execute the following instructions…

Performance · Computer Science 2023-08-29 Paul Alexander Bilokon , Maximilian Lucuta , Erez Shermer

Prompt engineering is crucial for effective interaction with generative artificial intelligence systems, yet existing optimisation methods often operate over an unstructured and vast prompt space, leading to high computational costs and…

Artificial Intelligence · Computer Science 2026-05-15 Devika Prasad , Luke Gerschwitz , Tong Li , Henry Xiao , Anjin Liu , Coco Wu , Anna Leontjeva , Luiz Pizzato

The aim of this work is to define and implement an extended C++ language to support the SIMD programming paradigm. The C++ programming language has been extended to express all the potentiality of an abstract SIMD machine consisting of a…

Programming Languages · Computer Science 2007-05-23 Alessandro Lonardo , Emanuele Panizzi , Benedetto Proietti

LLMs have shown immense potential for code translation, yet they often struggle to ensure both syntactic correctness and semantic consistency. While preference-based learning offers a promising alignment strategy, it is hindered by…

Artificial Intelligence · Computer Science 2026-05-14 Yuhan Wu , Huan Zhang , Wei Cheng , Chen Shen , Jingyue Yang , Wei Hu

This study explores running times of different ways to program cellular automata in C and C++, i.e. looping through arrays by different means, the effect of structures and objects, and the choice of data structure (array versus vector in…

Programming Languages · Computer Science 2024-11-01 Patrik Christen

The application of operator overloading algorithmic differentiation (AD) to computer programs in order to compute the derivative is quite common. But, the replacement of the underlying computational floating point type with the specialized…

Mathematical Software · Computer Science 2026-02-18 Max Sagebaum , Nicolas R. Gauger

FPGAs are well-suited for dataflow architectures that process data in a streaming or pipelined manner, thus satisfying the high computational and communication demands of emerging applications. However, manually implementing an efficient…

Hardware Architecture · Computer Science 2026-04-15 Weichuang Zhang , Yiquan Wang , Xinzhou Zhang , Chi Zhang , Yu Feng , Xiaofeng Hou , Chao Li , Jieru Zhao , Minyi Guo

In this paper, we introduce a novel methodology to efficiently construct a corpus for question answering over structured data. For this, we introduce an intermediate representation that is based on the logical query plan in a database…

ROOT is a data analysis framework broadly used in and outside of High Energy Physics (HEP). Since HEP software frameworks always strive for performance improvements, ROOT was extended with experimental support of runtime C++ Modules. C++…

Programming Languages · Computer Science 2019-10-02 Yuka Takahashi , Vassil Vassilev , Oksana Shadura , Raphael Isemann

Energy-aware architectures provide applications with a mix of low (LITTLE) and high (big) frequency cores. Choosing the best hardware configuration for a program running on such an architecture is difficult, because program parts benefit…

Programming Languages · Computer Science 2019-03-19 Marcelo Novaes , Vinícius Petrucci , Abdoulaye Gamatié , Fernando Quintão
‹ Prev 1 2 3 10 Next ›