Articles details

  • Efficient Correction of Anomalies in Snapshot Isolation Transactions
  • 01 Jan 2015
  • 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.
  • ACM Transactions on Architecture and Code Optimization
  • ACM
  • Heiner Litz, Ricardo Dias, David R. Cheriton
  • 11
  • 4
  • 1544-3566
  • http://doi.acm.org/10.1145/2693260
  • 10.1145/2693260
  • 65:1 to 65:24
  • 1 Jan 2015