English
Related papers

Related papers: Compiler Testing With Relaxed Memory Models

200 papers

Benchmarking and co-design are essential for driving optimizations and innovation around ML models, ML software, and next-generation hardware. Full workload benchmarks, e.g. MLPerf, play an essential role in enabling fair comparison across…

GUI is a bridge connecting user and application. Existing GUI testing tasks can be categorized into two groups: functionality testing and compatibility testing. While the functionality testing focuses on detecting application runtime bugs,…

Software Engineering · Computer Science 2022-12-29 Jiaming Ye , Mulong Xie , Siyuan Chen , Fuyuan Zhang , Lei Ma , Zhenchang Xing , Jianjun Zhao

Identifying the root cause of a bug remains difficult for many developers because bug reports often lack a bug reproducing test case that reliably triggers the failure. Manually writing such test cases is time-consuming and requires…

Software Engineering · Computer Science 2026-03-10 Zhiwei Fei , Yue Pan , Federica Sarro , Jidong Ge , Marc Liu , Vincent Ng , He Ye

Foundational software libraries such as ROOT are under intense pressure to avoid software regression, including performance regressions. Continuous performance benchmarking, as a part of continuous integration and other code quality…

Software Engineering · Computer Science 2019-10-02 Oksana Shadura , Vassil Vassilev , Brian Paul Bockelman

The software development process for embedded systems is getting faster and faster, which generally incurs an increase in the associated complexity. As a consequence, consumer electronics companies usually invest a lot of resources in fast…

Logic in Computer Science · Computer Science 2015-09-08 Felipe R. M. Sousa , Lucas C. Cordeiro , Eddie B. de Lima Filho

Selecting the right compiler optimisations has a severe impact on programs' performance. Still, the available optimisations keep increasing, and their effect depends on the specific program, making the task human intractable. Researchers…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-05-12 Stefano Cereda , Gianluca Palermo , Paolo Cremonesi , Stefano Doni

The Entity-Component-System (ECS) software design pattern, long used in game development, encourages a clean separation of identity (entities), data properties (components), and computational behaviors (systems). Programs written using the…

Programming Languages · Computer Science 2025-09-17 Patrick Redmond , Jonathan Castello , José Manuel Calderón Trilla , Lindsey Kuper

With the application of deep learning technology, tools of DL framework testing are in high demand. Existing DL framework testing tools have limited coverage of bug types. For example, they lack the capability of effectively finding…

Software Engineering · Computer Science 2025-10-29 Xiaoyu Zhang , Juan Zhai , Shiqing Ma , Shiwei Wang , Chao Shen

Efficient code retrieval is critical for developer productivity, yet existing benchmarks largely focus on Python and rarely stress-test robustness beyond superficial lexical cues. To address the gap, we introduce an automated pipeline for…

Software Engineering · Computer Science 2026-03-06 Kaicheng Wang , Liyan Huang , Weike Fang , Weihang Wang

Random testing has proven to be an effective technique for compiler validation. However, the debugging of bugs identified through random testing presents a significant challenge due to the frequent occurrence of duplicate test programs that…

Software Engineering · Computer Science 2026-01-28 Xintong Zhou , Zhenyang Xu , Yongqiang Tian , Chengnian Sun

The C++ programming language is not only a keystone of the high-performance-computing ecosystem but has proven to be a successful base for portable parallel-programming frameworks. As is well known, C++ programmers use templates to…

Programming Languages · Computer Science 2019-04-30 Hal Finkel , David Poliakoff , David F. Richards

In the past decades, many different programming models for managing concurrency in applications have been proposed, such as the actor model, Communicating Sequential Processes, and Software Transactional Memory. The ubiquity of multi-core…

Programming Languages · Computer Science 2014-06-16 Janwillem Swalens , Stefan Marr , Joeri De Koster , Tom Van Cutsem

Continuous cloud service performance benchmarking is essential for detecting performance bugs early before deploying them to production. However, detecting performance regressions using application benchmarks, which usually treat the system…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-05-19 Sebastian Koch , Nils Japke , David Bermbach

Parallelization schemes are essential in order to exploit the full benefits of multi-core architectures. In said architectures, the most comprehensive parallelization API is OpenMP. However, the introduction of correct and optimal OpenMP…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-05-28 Idan Mosseri , Lee-or Alon , Re'em Harel , Gal Oren

Large language models (LLMs) have become increasingly prominent in academia and industry due to their remarkable performance in diverse applications. As these models evolve with increasing parameters, they excel in tasks like sentiment…

Machine Learning · Computer Science 2023-11-14 Le Chen , Arijit Bhattacharjee , Nesreen K. Ahmed , Niranjan Hasabnis , Gal Oren , Bin Lei , Ali Jannesari

Causal-consistent reversible debugging allows one to explore concurrent computations back and forth in order to locate the source of an error. In this setting, backward steps can be chosen freely as long as they are "causal consistent",…

Programming Languages · Computer Science 2024-06-11 Juan José González-Abril , Germán Vidal

The automated repair of C++ compilation errors presents a significant challenge, the resolution of which is critical for developer productivity. Progress in this domain is constrained by two primary factors: the scarcity of large-scale,…

Artificial Intelligence · Computer Science 2025-09-22 Weixuan Sun , Jucai Zhai , Dengfeng Liu , Xin Zhang , Xiaojun Wu , Qiaobo Hao , AIMgroup , Yang Fang , Jiuyang Tang

Compilers are widely-used infrastructures in accelerating the software development, and expected to be trustworthy. In the literature, various testing technologies have been proposed to guarantee the quality of compilers. However, there…

Software Engineering · Computer Science 2018-11-01 Yixuan Tang , Zhilei Ren , Weiqiang Kong , He Jiang

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

Proving only over source code that programs do not leak sensitive data leaves a gap between reasoning and reality that can only be filled by accounting for the behaviour of the compiler. Furthermore, software does not always have the luxury…

Programming Languages · Computer Science 2023-06-22 Robert Sison , Toby Murray