Temporally bounding TSO for fence-free asymmetric synchronization

Research output: Contribution to journalArticlepeer-review

Abstract

This paper introduces a temporally bounded total store ordering (TBTSO) memory model, and shows that it enables nonblocking fence-free solutions to asymmetric synchronization problems, such as those arising in memory reclamation and biased locking. TBTSO strengthens the TSO memory model by bounding the time it takes a store to drain from the store buffer into memory. This bound enables devising fence-free algorithms for asymmetric problems, which require a performance critical fast path to synchronize with an infrequently executed slow path. We demonstrate this by constructing (1) a fence-free version of the hazard pointers memory reclamation scheme, and (2) a fence-free biased lock algorithm which is compatible with unmanaged environments as it does not rely on safe points or similar mechanisms. We further argue that TBTSO can be implemented in hardware with modest modifications to existing TSO architectures. However, our design makes assumptions about proprietary implementation details of commercial hardware; it thus best serves as a starting point for a discussion on the feasibility of hardware TBTSO implementation. We also show how minimal OS support enables the adaptation of TBTSO algorithms to x86 systems.

Original languageEnglish
Pages (from-to)45-58
Number of pages14
JournalACM SIGPLAN Notices
Volume50
Issue number4
DOIs
StatePublished - Apr 2015

Keywords

  • Biased locks
  • Bounded TSO
  • Hazard pointers
  • Memory fences
  • TSO

Fingerprint

Dive into the research topics of 'Temporally bounding TSO for fence-free asymmetric synchronization'. Together they form a unique fingerprint.

Cite this