English
Related papers

Related papers: Dynamic Race Prediction in Linear Time

200 papers

Dynamic race detection is the problem of determining if an observed program execution reveals the presence of a data race in a program. The classical approach to solving this problem is to detect if there is a pair of conflicting memory…

Programming Languages · Computer Science 2018-08-02 Umang Mathur , Dileep Kini , Mahesh Viswanathan

Predictive data race detectors find data races that exist in executions other than the observed execution. Smaragdakis et al. introduced the causally-precedes (CP) relation and a polynomial-time analysis for sound (no false races)…

Software Engineering · Computer Science 2019-07-22 Jake Roemer , Michael D. Bond

Dynamic race detection based on the happens before (HB) partial order has now become the de facto approach to quickly identify data races in multi-threaded software. Most practical implementations for detecting these races use timestamps to…

Programming Languages · Computer Science 2025-04-10 Minjian Zhang , Daniel Wee Soong Lim , Mosaad Al Thokair , Umang Mathur , Mahesh Viswanathan

Happens before-based dynamic analysis is the go-to technique for detecting data races in large scale software projects due to the absence of false positive reports. However, such analyses are expensive since they employ expensive vector…

Programming Languages · Computer Science 2025-06-26 Mosaad Al Thokair , Minjian Zhang , Umang Mathur , Mahesh Viswanathan

The high degree of parallelism and relatively complicated synchronization mechanisms in GPUs make writing correct kernels difficult. Data races pose one such concurrency correctness challenge, and therefore, effective methods of detecting…

Programming Languages · Computer Science 2021-11-25 Sagnik Dey , Mayant Mukul , Parth Sharma , Swarnendu Biswas

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 are accesses to a shared resource that can be executed…

Programming Languages · Computer Science 2019-11-06 Andreas Pavlogiannis

Data races are among the most common bugs in concurrency. The standard approach to data-race detection is via dynamic analyses, which work over executions of concurrent programs, instead of the program source code. The rich literature on…

Programming Languages · Computer Science 2021-07-09 Rucha Kulkarni , Umang Mathur , Andreas Pavlogiannis

Dynamic data race prediction aims to identify races based on a single program run represented by a trace. The challenge is to remain efficient while being as sound and as complete as possible. Efficient means a linear run-time as otherwise…

Programming Languages · Computer Science 2022-05-19 Martin Sulzmann , Kai Stadtmüller

Data races are a real problem for parallel software, yet hard to detect. Sound predictive analysis observes a program execution and detects data races that exist in some other, unobserved execution. However, existing predictive analyses…

Programming Languages · Computer Science 2021-06-29 Kaan Genç , Jake Roemer , Yufan Xu , Michael D. Bond

We consider the problem of detecting data races in program traces that have been compressed using straight line programs (SLP), which are special context-free grammars that generate exactly one string, namely the trace that they represent.…

Programming Languages · Computer Science 2018-12-19 Dileep Kini , Umang Mathur , Mahesh Viswanathan

We consider the problem of data race prediction where the program's behavior is represented by a trace. A trace is a sequence of program events recorded during the execution of the program. We employ the schedulable happens-before relation…

Programming Languages · Computer Science 2019-09-10 Martin Sulzmann , Kai Stadtmüller

Happens-before based data race prediction methods infer from a trace of events a partial order to check if one event happens before another event. If two two write events are unordered, they are in a race. We observe that common tracing…

Programming Languages · Computer Science 2019-10-29 Martin Sulzmann , Kai Stadtmüller

We introduce and study the problem of detecting short races in an observed trace. Specifically, for a race type $R$, given a trace $\sigma$ and window size $w$, the task is to determine whether there exists an $R$-race $(e_1, e_2)$ in…

Programming Languages · Computer Science 2026-03-04 Minjian Zhang , Mahesh Viswanathan

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 concurrency errors are (data) races, which occur when…

Programming Languages · Computer Science 2020-11-02 Umang Mathur , Andreas Pavlogiannis , Mahesh Viswanathan

The lock set method and the partial order method are two main approaches to guarantee that dynamic data race prediction remains efficient. There are many variations of these ideas. Common to all of them is the assumption that the events in…

Programming Languages · Computer Science 2023-10-13 Martin Sulzmann , Peter Thiemann

A growing class of applications demands \emph{fair ordering} of events, which ensures that events generated earlier are processed before later events. However, achieving such sequencing is challenging due to the inherent errors in clock…

Networking and Internet Architecture · Computer Science 2025-11-04 Muhammad Haseeb , Jinkun Geng , Radhika Mittal , Aurojit Panda , Srinivas Narayana , Anirudh Sivaraman

Making threaded programs safe and easy to reason about is one of the chief difficulties in modern programming. This work provides an efficient execution model for SCOOP, a concurrency approach that provides not only data race freedom but…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-07-28 Scott West , Sebastian Nanz , Bertrand Meyer

Process calculi based in logic, such as $\pi$DILL and CP, provide a foundation for deadlock-free concurrent programming, but exclude non-determinism and races. HCP is a reformulation of CP which addresses a fundamental shortcoming: the…

Logic in Computer Science · Computer Science 2023-06-22 Wen Kokke , J. Garrett Morris , Philip Wadler

Programmers of distributed systems need to reason about concurrency to avoid races. However, reasoning about concurrency is difficult, and unexpected races show up as bugs. Data race detection in shared memory systems is well-studied…

Software Engineering · Computer Science 2025-07-28 Zhengqun Koo

Process calculi based on logic, such as $\pi$DILL and CP, provide a foundation for deadlock-free concurrent programming. However, in previous work, there is a mismatch between the rules for constructing proofs and the term constructors of…

Logic in Computer Science · Computer Science 2019-04-16 Wen Kokke , Fabrizio Montesi , Marco Peressotti
‹ Prev 1 2 3 10 Next ›