Ordering-Based Semantics for Software Transactional Memory

  • Authors:
  • Michael F. Spear;Luke Dalessandro;Virendra J. Marathe;Michael L. Scott

  • Affiliations:
  • Department of Computer Science, University of Rochester, Rochester, USA NY 14627;Department of Computer Science, University of Rochester, Rochester, USA NY 14627;Department of Computer Science, University of Rochester, Rochester, USA NY 14627;Department of Computer Science, University of Rochester, Rochester, USA NY 14627

  • Venue:
  • OPODIS '08 Proceedings of the 12th International Conference on Principles of Distributed Systems
  • Year:
  • 2008

Quantified Score

Hi-index 0.02

Visualization

Abstract

It has been widely suggested that memory transactions should behave as if they acquired and released a single global lock. Unfortunately, this behavior can be expensive to achieve, particularly when--as in the natural publication/privatization idiom--the same data are accessed both transactionally and nontransactionally. To avoid overhead, we propose selective strict serializability (SSS) semantics, in which transactions have a global total order, but nontransactional accesses are globally ordered only with respect to explicitly marked transactions. Our definition of SSS formally characterizes the permissible behaviors of an STM system without recourse to locks. If all transactions are marked, then SSS, single-lock semantics, and database-style strict serializability are equivalent. We evaluate several SSS implementations in the context of a TL2-like STM system. We also evaluate a weaker model, selective flow serializability (SFS), which is similar in motivation to the asymmetric lock atomicity (ALA) of Menon et al. We argue that ordering-based semantics are conceptually preferable to lock-based semantics, and just as efficient.