Last-use Opacity: A Strong Safety Property for Transactional Memory with Early Release Support
Konrad Siek, Pawe{\l} T. Wojciechowski

TL;DR
This paper introduces last-use opacity, a new safety property for transactional memory that balances strong safety guarantees with the flexibility needed for early release optimization.
Contribution
It proposes last-use opacity, a novel safety property that allows early release while maintaining essential safety guarantees in transactional memory systems.
Findings
Introduces last-use opacity as a new safety property.
Presents a TM algorithm satisfying last-use opacity.
Demonstrates the property eliminates most inconsistent views.
Abstract
Transaction Memory (TM) is a concurrency control abstraction that allows the programmer to specify blocks of code to be executed atomically as transactions. However, since transactional code can contain just about any operation attention must be paid to the state of shared variables at any given time. E.g., contrary to a database transaction, if a TM transaction reads a stale value it may execute dangerous operations, like attempt to divide by zero, access an illegal memory address, or enter an infinite loop. Thus serializability is insufficient, and stronger safety properties are required in TM, which regulate what values can be read, even by transactions that abort. Hence, a number of TM safety properties were developed, including opacity, and TMS1 and TMS2. However, such strong properties preclude using early release as a technique for optimizing TM, because they virtually forbid…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed systems and fault tolerance · Parallel Computing and Optimization Techniques · Cognitive Functions and Memory
