Abstract
Transactional memory systems providing snapshot isolation enable concurrent access to shared data without incurring aborts on read-write conflicts. Reducing aborts is extremely relevant as it leads to higher concurrency, greater performance, and better predictability. Unfortunately, snapshot isolation does not provide serializability as it allows certain anomalies that can lead to subtle consistency violations. While some mechanisms have been proposed to verify the correctness of a program utilizing snapshot isolation transactions, it remains difficult to repair incorrect applications. To reduce the programmer's burden in this case, we present a technique based on dynamic code and graph dependency analysis that automatically corrects existing snapshot isolation anomalies in transactional memory programs. Our evaluation shows that corrected applications retain the performance benefits characteristic of snapshot isolation over conventional transactional memory systems.
Author supplied keywords
Cite
CITATION STYLE
Litz, H., Dias, R. J., & Cheriton, D. R. (2014). Efficient correction of anomalies in snapshot isolation transactions. ACM Transactions on Architecture and Code Optimization, 11(4). https://doi.org/10.1145/2693260
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.