Against lock-based semantics for transactional memory

  • Authors:
  • Victor Luchangco

  • Affiliations:
  • Sun Microsystems Laboratories, Burlington, MA, USA

  • Venue:
  • Proceedings of the twentieth annual symposium on Parallelism in algorithms and architectures
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this position paper, I argue that transactional memory should not be specified in terms of locks. In particular, the semantics of transactional memory in the face of nontransactional access, weak memory consistency guarantees and compiler transformations should not be determined by the behaviors exhibited by lock-based implementations. Specifying transactional behavior in terms of locks would repeat mistakes made in the database community and likely result in specifications as inscrutable to programmers as the memory consistency models that proliferated in the 1990s. It would undercut the promise of transactional memory to free us from the tyranny of lock-based programming and the fragile programs that result, a promise based on the potential for transactions to provide a measure of modularity for concurrent programs. We should strive to preserve that potential as we relax transactional guarantees to admit more efficient implementations.