A survey on software fault localization

WE Wong, R Gao, Y Li, R Abreu… - IEEE Transactions on …, 2016 - ieeexplore.ieee.org
Software fault localization, the act of identifying the locations of faults in a program, is widely
recognized to be one of the most tedious, time consuming, and expensive-yet equally critical …

Maximal sound predictive race detection with control flow abstraction

J Huang, PON Meredith, G Rosu - … of the 35th ACM SIGPLAN conference …, 2014 - dl.acm.org
Despite the numerous static and dynamic program analysis techniques in the literature, data
races remain one of the most common bugs in modern concurrent software. Further, the …

Software fault localization: An overview of research, techniques, and tools

WE Wong, R Gao, Y Li, R Abreu… - Handbook of Software …, 2023 - Wiley Online Library
This chapter describes traditional and intuitive fault localization techniques, including
program logging, assertions, breakpoints, and profiling. Many advanced fault localization …

Sound predictive race detection in polynomial time

Y Smaragdakis, J Evans, C Sadowski, J Yi… - ACM Sigplan …, 2012 - dl.acm.org
Data races are among the most reliable indicators of programming errors in concurrent
software. For at least two decades, Lamport's happens-before (HB) relation has served as …

Maple: A coverage-driven testing tool for multithreaded programs

J Yu, S Narayanasamy, C Pereira… - Proceedings of the ACM …, 2012 - dl.acm.org
Testing multithreaded programs is a hard problem, because it is challenging to expose
those rare interleavings that can trigger a concurrency bug. We propose a new thread …

Sound and efficient concurrency bug prediction

Y Cai, H Yun, J Wang, L Qiao, J Palsberg - Proceedings of the 29th ACM …, 2021 - dl.acm.org
Concurrency bugs are extremely difficult to detect. Recently, several dynamic techniques
achieve sound analysis. M2 is even complete for two threads. It is designed to decide …

Predictive monitoring against pattern regular languages

Z Ang, U Mathur - Proceedings of the ACM on Programming Languages, 2024 - dl.acm.org
While current bug detection techniques for concurrent software focus on unearthing low-
level issues such as data races or deadlocks, they often fall short of discovering more …

Optimal prediction of synchronization-preserving races

U Mathur, A Pavlogiannis, M Viswanathan - Proceedings of the ACM on …, 2021 - dl.acm.org
Concurrent programs are notoriously hard to write correctly, as scheduling nondeterminism
introduces subtle errors that are both hard to detect and to reproduce. The most common …

Ldx: Causality inference by lightweight dual execution

Y Kwon, D Kim, WN Sumner, K Kim… - Proceedings of the …, 2016 - dl.acm.org
Causality inference, such as dynamic taint anslysis, has many applications (eg, information
leak detection). It determines whether an event e is causally dependent on a preceding …

Fast, sound, and effectively complete dynamic race prediction

A Pavlogiannis - Proceedings of the ACM on Programming Languages, 2019 - dl.acm.org
Writing concurrent programs is highly error-prone due to the nondeterminism in interprocess
communication. The most reliable indicators of errors in concurrency are data races, which …