| Dynamic detection of atomic-set-serializability violations |
| Full text |
Pdf
(350 KB)
|
Source
|
International Conference on Software Engineering
archive
Proceedings of the 30th international conference on Software engineering
table of contents
Leipzig, Germany
SESSION: Program analysis
table of contents
Pages 231-240
Year of Publication: 2008
ISBN:978-1-60558-079-1
|
|
Authors
|
|
Christian Hammer
|
Universität Karlsruhe (TH), Karlsruhe, Germany
|
|
Julian Dolby
|
IBM T. J. Watson Research Center, Yorktown Heights, NY, USA
|
|
Mandana Vaziri
|
IBM T. J. Watson Research Center, Yorktown Heights, NY, USA
|
|
Frank Tip
|
IBM T. J. Watson Research Center, Yorktown Heights, NY, USA
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): n/a, Downloads (12 Months): n/a, Citation Count: 1
|
|
|
ABSTRACT
Previously we presented atomic sets, memory locations that share some consistency property, and units of work, code fragments that preserve consistency of atomic sets on which they are declared. We also proposed atomic-set serializability as a correctness criterion for concurrent programs, stating that units of work must be serializable for each atomic set. We showed that a set of problematic data access patterns characterize executions that are not atomic-set serializable. Our criterion subsumes data races (single-location atomic sets) and serializability (all locations in one set). In this paper, we present a dynamic analysis for detecting violations of atomic-set serializability. The analysis can be implemented efficiently, and does not depend on any specific synchronization mechanism. We implemented the analysis and evaluated it on a suite of real programs and benchmarks. We found a number of known errors as well as several problems not previously reported.
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
|
T. J. Watson Libraries for Analysis (WALA). http://wala.sourceforge.net/wiki/index.php.
|
 |
2
|
Rahul Agarwal , Amit Sasturkar , Liqiang Wang , Scott D. Stoller, Optimized run-time race detection and atomicity checking using partial discovered types, Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering, November 07-11, 2005, Long Beach, CA, USA
[doi> 10.1145/1101908.1101944]
|
| |
3
|
C. Artho, K. Havelund, and A. Biere. High-level data races. Journal on Software Testing, Verification and Reliability (STVR), 13(4):207--227, 2003.
|
| |
4
|
C. Artho, K. Havelund, and A. Biere. Using block-local atomicity to detect stale-value concurrency errors. In Automated Technology for Verification and Analysis (ATVA'04), 2004.
|
 |
5
|
|
| |
6
|
Y. Ben-Asher, Y. Eytani, E. Farchi, and S. Ur. Noise makers need to know where to be silent - producing schedules that find bugs. In International Symposium on Leveraging Applications of Formal Methods, Verification and Validation (ISOLA), 2006.
|
| |
7
|
|
 |
8
|
Chandrasekhar Boyapati , Robert Lee , Martin Rinard, Ownership types for safe programming: preventing data races and deadlocks, Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, November 04-08, 2002, Seattle, Washington, USA
|
| |
9
|
|
 |
10
|
|
| |
11
|
|
| |
12
|
Y. Eytani and S. Ur. Compiling a benchmark of documented multi-threaded bugs. In Proc. IEEE International Parallel & Distributed Processing Symposium (IPDPS'04), 2004.
|
| |
13
|
Y. Eytani and S. Ur. Compiling a benchmark of documented multi-threaded bugs. In Proc. IEEE International Parallel & Distributed Processing Symposium (IPDPS'04), 2004.
|
 |
14
|
|
 |
15
|
Cormac Flanagan , Stephen N. Freund , Marina Lifshin, Type inference for atomicity, Proceedings of the 2005 ACM SIGPLAN international workshop on Types in languages design and implementation, p.47-58, January 10-10, 2005, Long Beach, California, USA
[doi> 10.1145/1040294.1040299]
|
 |
16
|
|
 |
17
|
|
| |
18
|
|
| |
19
|
|
| |
20
|
|
 |
21
|
|
 |
22
|
Shan Lu , Joseph Tucek , Feng Qin , Yuanyuan Zhou, AVIO: detecting atomicity violations via access interleaving invariants, Proceedings of the 12th international conference on Architectural support for programming languages and operating systems, October 21-25, 2006, San Jose, California, USA
|
 |
23
|
|
 |
24
|
|
 |
25
|
|
 |
26
|
Satish Narayanasamy , Zhenghao Wang , Jordan Tigani , Andrew Edwards , Brad Calder, Automatically classifying benign and harmful data racesallusing replay analysis, Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation, June 10-13, 2007, San Diego, California, USA
|
 |
27
|
|
 |
28
|
|
 |
29
|
|
 |
30
|
Amit Sasturkar , Rahul Agarwal , Liqiang Wang , Scott D. Stoller, Automated type-based analysis of data races and atomicity, Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming, June 15-17, 2005, Chicago, IL, USA
[doi> 10.1145/1065944.1065956]
|
 |
31
|
|
 |
32
|
Mandana Vaziri , Frank Tip , Julian Dolby, Associating synchronization constraints with data in an object-oriented language, Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.334-345, January 11-13, 2006, Charleston, South Carolina, USA
|
 |
33
|
Christoph von Praun , Thomas R. Gross, Object race detection, Proceedings of the 16th ACM SIGPLAN conference on Object oriented programming, systems, languages, and applications, p.70-82, October 14-18, 2001, Tampa Bay, FL, USA
|
| |
34
|
C. von Praun and T. R. Gross. Atomicity violations in object-oriented programs. Journal of Object Technology, 3(6):103--122, June 2004. Special issue: ECOOP 2003 workshop on FTfJP.
|
| |
35
|
L. Wang and S. D. Stoller. Run-time analysis for atomicity. In Proceedings of the Workshop on Runtime Verification (RV'03), 2003. Volume 89(2) of Electronic Notes in Theoretical Computer Science. Elsevier.
|
 |
36
|
|
| |
37
|
|
 |
38
|
|
|