Recoverable mutual exclusion in sub-logarithmic time

Wojciech Golab, Danny Hendler

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

17 Scopus citations

Abstract

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
Pages211-220
Number of pages10
ISBN (Electronic)9781450349925
DOIs
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

Conference

Conference36th ACM Symposium on Principles of Distributed Computing, PODC 2017
Country/TerritoryUnited States
CityWashington
Period25/07/1727/07/17

Keywords

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

Fingerprint

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

Cite this