We describe a novel construction of arbitrary read-modify-write (RMW) primitives in a persistent shared memory model with process failures. Our construction uses blocking synchronization, in the form of recoverable mutual exclusion (RME), and is optimal in terms of the widely studied remote memory reference (RMR) complexity measure. The implemented objects tolerate either system-wide or independent process crashes, depending on the RME lock used, and also provide detectability for resolving the outcome of operations interrupted by failures. We prove that our construction is RMR-optimal using a reduction back to the RME problem. Our proof technique introduces a novel algorithmic style that enables solving challenging synchronization problems using a common execution path for both the system-wide and independent failure models, which previously required separate analyses, and relies only on a suitable implementation of the detectable base objects in each model to achieve RMR efficiency. Experiments demonstrate that our construction outperforms prior wait-free and lock-free algorithms on a multiprocessor with Intel Optane persistent memory.
@InProceedings{dhoked_et_al:LIPIcs.OPODIS.2024.5, author = {Dhoked, Sahil and Fahmy, Ahmed and Golab, Wojciech and Mittal, Neeraj}, title = {{RMR-Efficient Detectable Objects for Persistent Memory and Their Applications}}, booktitle = {28th International Conference on Principles of Distributed Systems (OPODIS 2024)}, pages = {5:1--5:26}, series = {Leibniz International Proceedings in Informatics (LIPIcs)}, ISBN = {978-3-95977-360-7}, ISSN = {1868-8969}, year = {2025}, volume = {324}, editor = {Bonomi, Silvia and Galletta, Letterio and Rivi\`{e}re, Etienne and Schiavoni, Valerio}, publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik}, address = {Dagstuhl, Germany}, URL = {https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.OPODIS.2024.5}, URN = {urn:nbn:de:0030-drops-225417}, doi = {10.4230/LIPIcs.OPODIS.2024.5}, annote = {Keywords: persistent memory, synchronization, recoverability, fault tolerance, detectability, scalability, RMR complexity, theory, mutual exclusion} }
Feedback for Dagstuhl Publishing