ACM Home Page
Please provide us with feedback. Feedback
AtomRace: data race and atomicity violation detector and healer
Full text PdfPdf (210 KB)
Source International Symposium on Software Testing and Analysis archive
Proceedings of the 6th workshop on Parallel and distributed systems: testing, analysis, and debugging table of contents
Seattle, Washington
Article No. 7  
Year of Publication: 2008
ISBN:978-1-60558-052-4
Authors
Zdeněk Letko  Brno University of Technology, Brno, Czech Republic
Tomáš Vojnar  Brno University of Technology, Brno, Czech Republic
Bohuslav Křena  Brno University of Technology, Brno, Czech Republic
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 6,   Downloads (12 Months): 59,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1390841.1390848
What is a DOI?

ABSTRACT

The paper proposes a novel algorithm called AtomRace for a dynamic detection of data races. Data races are detected as a special case of atomicity violations on atomic sections specially defined to span just particular read/write instructions and the transfer of control to and from them. A key ingredient allowing AtomRace to efficiently detect races on such short atomic sections is a use of techniques for a careful injection of noise into the scheduling of the monitored programs. The approach is very simple, fully automated, avoids false alarms, and allows for a lower overhead and better scalability than many other existing dynamic data race detection algorithms. We illustrate these facts by a set of experiments with a prototype implementation of AtomRace. Further, AtomRace can also be applied to detect atomicity violations on more general atomic sections than those used for the data race detection. They can be defined by the user or obtained by some static analysis.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
C. Artho, K. Havelund, and A. Biere. High-level data races, 2003.
2
3
 
4
O. Edelstein, E. Farchi, E. Goldin, Y. Nir, G. Ratsaby, and S. Ur. Framework for testing multi-threaded java programs. Concurrency and Computation: Practice and Experience, 15(3--5):485--499, 2003.
 
5
T. Elmas, S. Qadeer, and S. Tasiran. Precise data-race detection and efficient model checking using locksets. Technical Report MSR-TR-2005-118, Microsoft Research, March 2006.
6
7
8
9
 
10
T. Henzinger, R. Jhala, R. Majumdar, and S. Qadeer. Thread-modular abstraction refinement. In Proceedings of the 15th International Conference on Computer-Aided Verification (CAV), pages 262--274. Lecture Notes in Computer Science 2725, Springer-Verlag, January 2003.
 
11
 
12
V. Kahlon, Y. Yang, S. Sankaranarayanan, and A. Gupta. Fast and accurate static data-race detection for concurrent programs. In CAV, pages 226--239, 2007.
13
14
 
15
Z. Letko. Dynamic data race detection and self-healing in java programs. Master's thesis, Faculty of Information Technology, Brno University of Technology, 2008.
16
 
17
F. Mattern. Virtual time and global states of distributed systems. In Parallel and Distributed Algorithms: proceedings of the International Workshop on Parallel and Distributed Algorithms. 1988.
 
18
R. Nagpaly, K. Pattabiramanz, D. Kirovski, and B. Zorn. Position paper - tolerace: Tolerating and detecting races. In STMCS: Second Workshop on Software Tools for Multi-Core Systems (STMCS), 2007.
19
20
21
 
22
23
24
25
 
26
27
28
 
29
C. von Praun and T. Gross. Static detection of atomicity violations in object-oriented programs, 2003.
30
31
32

Collaborative Colleagues:
Zdeněk Letko: colleagues
Tomáš Vojnar: colleagues
Bohuslav Křena: colleagues