Data-Centric Concurrency Control
Atomic-Set Serializability
In contrast to traditional code-based synchronization schemes like synchronized or atomic blocks, we propose a model that pursues data-centric synchronization. The programmer annotates a set of object fields/members (called atomic set) that share an (unspecified) consistency property. A new correctness criterion called atomic-set serializability, which is essentially serializability with respect to the projection on each atomic set, subsumes traditional data race freedom as well as serializability/atomicity, and thus guarantees absence of concurrency errors such as data races, view inconsistencies, and atomicity violations.
Members
Publications
- Daniel Marino, Christian Hammer, Julian Dolby, Mandana Vaziri, Frank Tip, and Jan Vitek: Detecting Deadlock in Programs with Data-Centric Synchronization. In International Conference on Software Engineering (ICSE), San Francisco, CA, 2013.
- Julian Dolby, Christian Hammer, Daniel Marino, Frank Tip, Mandana Vaziri, and Jan Vitek: A Data-Centric Approach to Synchronization. In ACM Trans. Program. Lang. Syst., 34(1): pp. 4:1-4:48, May 2012..
- Nicholas A. Kidd, Thomas W. Reps, Julian Dolby, and Mandana Vaziri: Finding Concurrency-Related Bugs using Random Isolation. International Journal on Software Tools for Technology Transfer (STTT), 13(6), pp. 495-518, November 2011.
- William N. Sumner, Christian Hammer, and Julian Dolby: Marathon: Detecting Atomic-Set Serializability Violations with Conflict Graphs. In Proceedings of the 2nd International Conference on Runtime Verification (RV 2011), (San Francisco, CA, September 2011).
- Julian Dolby, Christian Hammer, Daniel Marino, Frank Tip, Mandana Vaziri, and Jan Vitek: A Data-Centric Approach to Synchronization. IBM Research Report, RC25106, February 2011.
- Mandana Vaziri, Frank Tip, Julian Dolby, Christian Hammer, and Jan Vitek: A Type System for Data-Centric Synchronization. In Proceedings of the 24th European Conference on Object-Oriented Programming (ECOOP 2010), (Maribor, Slovenia, June 2010), pp. 304–328 (slides, DOI).
- Nicholas A. Kidd, Thomas W. Reps, Julian Dolby, and Mandana Vaziri: Finding Concurrency-Related Bugs using Random Isolation. In Proc. Verification, Model Checking, and Abstract Interpretation (VMCAI 2009), (Savannah, GA, January 2009), pp. 198–213.
- Christian Hammer, Julian Dolby, Mandana Vaziri, and Frank Tip: Dynamic Detection of Atomic-Set-Serializability Violations. In Proceedings of the 30th International Conference on Software Engineering (ICSE 2008), (Leipzig, Germany, May 2008), pp. 231-240.
- Mandana Vaziri, Frank Tip, and Julian Dolby: Associating Synchronization Constraints with Data in an Object-Oriented Language. In Proceedings of the 33rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL 2006), (Charleston, SC, January 2006), pp. 334-345.
Downloads
Benchmarks with annotation and translated code used in the paper 'A Data-Centric Approach to Synchronization':