Writing reliable concurrent software remains a huge challenge for today's programmers. Programmers rarely reason about their code by explicitly considering different possible inter …
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 …
C Wen, M He, B Wu, Z Xu, S Qin - Proceedings of the 44th International …, 2022 - dl.acm.org
Controlled concurrency testing (CCT) techniques have been shown promising for concurrency bug detection. Their key insight is to control the order in which threads get …
Many modern software systems are composed of multiple execution flows that run simultaneously, spanning from applications designed to exploit the power of modern multi …
A Farzan, U Mathur - Proceedings of the ACM on Programming …, 2024 - dl.acm.org
Trace theory (formulated by Mazurkiewicz in 1987) is a principled framework for defining equivalence relations for concurrent program runs based on a commutativity relation over …
CG Kalhauge, J Palsberg - Proceedings of the ACM on Programming …, 2018 - dl.acm.org
For a concurrent program, a prediction tool maps the history of a single run to a prediction of bugs in an exponential number of other runs. If all those bugs can occur, then the tool is …
J Huang, C Zhang - Journal of Computer Science and Technology, 2016 - Springer
Concurrency debugging is an extremely important yet challenging problem that has been hampering developer productivity and software reliability in the multicore era. We have …
We present RDIT, a novel dynamic technique to detect data races in multithreaded programs with incomplete trace information, ie, in the presence of missing events. RDIT is both precise …
Reproducing field failures is the first essential step for understanding, localizing and removing faults. Reproducing concurrency field failures is hard due to the need of …