Comparative Analysis of Dynamic Data Race Detection Techniques

06/08/2022
by   Danial Entezari, et al.
0

The consequences of data races can be potentially very problematic [1], and it is important to determine what tools and methods are best at detecting them. The following conditions must be met for a data race to occur: two or more threads in a single process access the same memory location concurrently, at least one of the accesses is for writing, and the threads are not using any exclusive locks to control their accesses to that memory. This paper reveals the techniques and implementations of the two main methods for dynamic data race detection techniques; the happens-before and lockset methods, and produces an analysis for several tools that employ either (4, 5) or of both these methods (7.1) for detecting data races. This paper also reveals the extent to which dynamic data race detection (also called dynamic analysis) can identify harmful data races, how it can be implemented, and how it compares to other forms of data detection in terms of performance and accuracy.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset

Sign in with Google

×

Use your Google Account to sign in to DeepAI

×

Consider DeepAI Pro