Recoverable mutual exclusion in sub-logarithmic time

Wojciech Golab, Danny Hendler

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

32 Scopus citations


Recoverable mutual exclusion (RME) is a variation on the classic mutual exclusion (ME) problem that allows processes to crash and recover. The time complexity of RME algorithms is quantified in the same way as for ME, namely by counting remote memory references - expensive memory operations that traverse the processor-to-memory interconnect. Priorwork on the RME problem established an upper bound of O(log N) RMRs in an asynchronous shared memory model with N processes that communicate using atomic read and write operations, prompting the question whether sub-logarithmic RMR complexity is attainable using common read modify-write primitives. We answer this question positively in the cache-coherent model by presenting an RME algorithm that incurs O(log N/log log N) RMRs and uses read, write, Fetch-And-Store, and Compare-And-Swap instructions. We also present an O(1) RMRs algorithm that relies on double-word Compare-And-Swap and a double-word variation of Fetch-And-Store. Both algorithms are inspired by Mellor-Crummey and Scott's queue lock.

Original languageEnglish
Title of host publicationPODC 2017 - Proceedings of the ACM Symposium on Principles of Distributed Computing
PublisherAssociation for Computing Machinery
Number of pages10
ISBN (Electronic)9781450349925
StatePublished - 26 Jul 2017
Event36th ACM Symposium on Principles of Distributed Computing, PODC 2017 - Washington, United States
Duration: 25 Jul 201727 Jul 2017

Publication series

NameProceedings of the Annual ACM Symposium on Principles of Distributed Computing
VolumePart F129314


Conference36th ACM Symposium on Principles of Distributed Computing, PODC 2017
Country/TerritoryUnited States


  • Concurrency
  • Fault tolerance
  • Multi-core algorithms
  • Mutual exclusion
  • Non-volatile main memory
  • Persistent data structures
  • Recovery
  • Shared memory

ASJC Scopus subject areas

  • Software
  • Hardware and Architecture
  • Computer Networks and Communications


Dive into the research topics of 'Recoverable mutual exclusion in sub-logarithmic time'. Together they form a unique fingerprint.

Cite this