Academic
Publications
Decon-structing Transactional Semantics: The Subtleties of Atomicity

Decon-structing Transactional Semantics: The Subtleties of Atomicity,Colin Blundell,E Christopher Lewis,Milo M. K. Martin

Decon-structing Transactional Semantics: The Subtleties of Atomicity   (Citations: 57)
BibTex | RIS | RefWorks Download
Abstract Researchers have recently proposed software and hardware support for transactions as a replacement for the traditional lock-based synchronization most common,in multithreaded programs. Transactions allow the programmer,to specify a region of the program,that should appear to execute atomically, while the hardware and runtime system optimistically execute the transactions concurrently to obtain high performance. The transactional abstraction is thus a promising approach for creating both faster and simpler multithreaded programs. Although transactions have great potential for simplifying multithreaded programming,due to their strong atomicity guarantees, this work shows that these same guarantees can have unexpected and potentially serious negative effects on programs,that were written assuming,weaker synchronization primitives. We make,three contributions: (1) we show that a direct translation (statically or dynamically) of lock-based critical sections into transactions can introduce deadlocks into otherwise correct programs, (2) we define an atomicity model for transactions, in which we introduce the terms strong and weak atomicity, and (3) we show that the decision to enforce strong atomicity as opposed to weak atomicity can also result in deadlock. These results invalidate the intuitive idea that transactions are strictly safer than lock-based critical sections and strong atomicity is strictly safer than weak atomicity. We assert that the research community,must confront these subtle issues of transactional
Published in 2005.
Cumulative Annual
    • ...In the case of TM, a critical region which is not encapsulated in a transaction may also trigger a synchronization error in TM frameworks providing a weak isolation memory model [5]...

    Bruno C. Teixeiraet al. Detection of Transactional Memory anomalies using static analysis

    • ...By studying a large, real, application we aim to gain insights into many of the choices that researchers are considering when designing programming abstractions based on TM. For example, whether or not strong atomicity is required [1, 4, 5, 23, 29], whether TM is useful for failure atomicity as well as synchronization, how frequently open nesting [24] or transactional boosting [16] are useful, which kinds of library calls, system calls, or ...
    • ...The implementation provides a form of weak atomicity [5]: there is no concurrency control between concurrent transactional and non-transactional access to the same data...

    Ferad Zyulkyarovet al. Atomic quake: using transactional memory in an interactive multiplayer...

    • ...Converting from lock-based to transaction-based code is not trivial [8]...

    Paruj Ratanaworabhanet al. Detecting and tolerating asymmetric races

    • ...This is true assuming strong atomicity [6] but can leave a subtle hole under weak atomicity, which does not define the correct semantics among interleaved transactional and non-transactional codes...

    Seunghwa Kanget al. An efficient transactional memory algorithm for computing minimum span...

    • ...In a program with publication and privatization an obvious question arises: what happens if there is a race between conflicting transactional and nontransactional accesses—a case in which nontransactional access in thread A is not separated from transactional access in thread B by any transaction in thread A? Blundell et al. [8] observed that hardware transactional memory (HTM) designs seem to exhibit one of two possible behaviors when ...
    • ...It was originally proposed by Blundell et al. [8] to describe TM implementations in which transactions serialize both with other transactions and with nontransactional accesses...
    • ...Blundell et al. [8] showed that strong and weak isolation are incompatible...

    Luke Dalessandro Michaelet al. Strong Isolation is a Weak Idea

Sort by: