high velocity trains

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.




Benchmarks with annotation and translated code used in the paper 'A Data-Centric Approach to Synchronization':