English
Related papers

Related papers: Characterizing and Detecting CUDA Program Bugs

200 papers

As applications get developed, bugs inevitably get introduced. Often, it is unclear why a given code change introduced a given bug. To find this causal relation and more effectively debug, developers can leverage the existence of a previous…

Programming Languages · Computer Science 2021-04-13 Thomas Dupriez , Steven Costiou , Stéphane Ducasse

Bug localization aims to reduce debugging time by recommending program elements that are relevant for a specific bug report. To date, researchers have primarily addressed this problem by applying different information retrieval techniques…

Software Engineering · Computer Science 2022-03-08 Agnieszka Ciborowska , Michael J. Decker , Kostadin Damevski

Most software that runs on computers undergoes processing by compilers. Since compilers constitute the fundamental infrastructure of software development, their correctness is paramount. Over the years, researchers have invested in…

Software Engineering · Computer Science 2023-06-19 Haoyang Ma

Despite the advancements in software testing, bugs still plague deployed software and result in crashes in production. When debugging issues -- sometimes caused by "heisenbugs" -- there is the need to interpret core dumps and reproduce the…

Continuous fuzzing is an increasingly popular technique for automated quality and security assurance. Google maintains OSS-Fuzz: a continuous fuzzing service for open source software. We conduct the first empirical study of OSS-Fuzz,…

Software Engineering · Computer Science 2021-03-23 Zhen Yu Ding , Claire Le Goues

Resource leak bugs in Android apps are pervasive and can cause serious performance degradation and system crashes. In recent years, several resource leak detection techniques have been proposed to assist Android developers in correctly…

Software Engineering · Computer Science 2016-11-28 Yepang Liu , Lili Wei , Chang Xu , Shing-Chi Cheung

Fixing bugs is an important phase in software development and maintenance. In practice, the process of bug fixing may conflict with the release schedule. Such confliction leads to a trade-off between software quality and release schedule,…

Software Engineering · Computer Science 2017-04-18 Jifeng Xuan , Yan Hu , He Jiang

The actor model is an attractive foundation for developing concurrent applications because actors are isolated concurrent entities that communicate through asynchronous messages and do not share state. Thereby, they avoid concurrency bugs…

Programming Languages · Computer Science 2018-04-25 Carmen Torres Lopez , Stefan Marr , Hanspeter Mössenböck , Elisa Gonzalez Boix

Scientific advancements rely on high-performance computing (HPC) applications that model real-world phenomena through simulations. These applications process vast amounts of data on specialized accelerators (eg., GPUs) using special…

Software Engineering · Computer Science 2025-01-20 Matthew Davis , Aakash Kulkarni , Ziyan Chen , Yunhan Qiao , Christopher Terrazas , Manish Motwani

Bugs that persist into releases of video games can have negative impacts on both developers and users, but particular aspects of testing in game development can lead to difficulties in effectively catching these missed bugs. It has become…

Software Engineering · Computer Science 2021-03-09 Andrew Truelove , Eduardo Santana de Almeida , Iftekhar Ahmed

Today, software systems have a significant role in various domains among which are healthcare, entertainment, transport and logistics, and many more. It is only natural that with this increasing dependency on software, the number of…

Software Engineering · Computer Science 2022-12-23 Filip Zamfirov

As quantum computing continues to mature, more developers are designing, coding, and simulating quantum circuits. A challenge exists, however, in debugging quantum circuits, particularly as they scale in size and complexity. Given the lack…

Quantum Physics · Physics 2025-07-23 Jocelyn Li , Ella Rubinshtein , Margaret Martonosi

Software systems evolve continuously through frequent code changes, yet such changes often introduce unintended bugs despite extensive testing and code review. Existing testing approaches are largely constrained to predefined execution…

Software Engineering · Computer Science 2026-03-04 Yanqi Su , Michael Pradel , Chunyang Chen

Quantum computing platforms are susceptible to quantum-specific bugs (e.g., incorrect ordering of qubits or incorrect implementation of quantum abstractions), which are difficult to detect and require specialized expertise. The field faces…

Software Engineering · Computer Science 2025-03-24 Matteo Paltenghi , Michael Pradel

The aim is to identify faulty predicates which have strong effect on program failure. Statistical debugging techniques are amongst best methods for pinpointing defects within the program source code. However, they have some drawbacks. They…

Software Engineering · Computer Science 2016-12-20 Farid Feyzi , Esmaeel Nikravan , Saeed Parsa

Fault localization has been determined as a major resource factor in the software development life cycle. Academic fault localization techniques are mostly unknown and unused in professional environments. Although manual debugging…

Software Engineering · Computer Science 2021-03-04 Thomas Hirsch

Bug patterns are erroneous code idioms or bad coding practices that have been proved to fail time and time again, which are usually caused by the misunderstanding of a programming language's features, the use of erroneous design patterns,…

Software Engineering · Computer Science 2021-03-17 Pengzhan Zhao , Jianjun Zhao , Lei Ma

We present an industrial case study that demonstrates the practicality and effectiveness of Symbolic Quick Error Detection (Symbolic QED) in detecting logic design flaws (logic bugs) during pre-silicon verification. Our study focuses on…

Conventional debugging techniques used in traditional software are similarly used when debugging video games. However, the reality of video games require its own set of unique debugging techniques such as On-Screen Console, Debug Draws,…

Software Engineering · Computer Science 2026-01-12 Carlos Pinto Gomez , Fabio Petrillo

Pointers are a powerful, but dangerous feature provided by the C and C++ programming languages, and incorrect use of pointers is a common source of bugs and security vulnerabilities. Making secure software is crucial, as vulnerabilities…

Formal Languages and Automata Theory · Computer Science 2024-11-01 Vlad-Alexandru Teodorescu , Dorel Lucanu