We study the performance power of software combining in designing recoverable algorithms and data structures. We present two recoverable synchronization protocols, one blocking and another wait-free, which illustrate how to use software combining to achieve both low persistence and synchronization cost. Our experiments show that these protocols outperform by far state-of-the-art recoverable universal constructions and transactional memory systems. We built recoverable queues and stacks, based on these protocols, that exhibit much better performance than previous such implementations.
@InProceedings{fatourou_et_al:LIPIcs.DISC.2021.56, author = {Fatourou, Panagiota and Kallimanis, Nikolaos D. and Kosmas, Eleftherios}, title = {{Brief Announcement: Persistent Software Combining}}, booktitle = {35th International Symposium on Distributed Computing (DISC 2021)}, pages = {56:1--56:4}, series = {Leibniz International Proceedings in Informatics (LIPIcs)}, ISBN = {978-3-95977-210-5}, ISSN = {1868-8969}, year = {2021}, volume = {209}, editor = {Gilbert, Seth}, publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik}, address = {Dagstuhl, Germany}, URL = {https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.DISC.2021.56}, URN = {urn:nbn:de:0030-drops-148580}, doi = {10.4230/LIPIcs.DISC.2021.56}, annote = {Keywords: Persistent objects, recoverable algorithms, durability, synchronization protocols, software combining, universal constructions, wait-freedom, stacks, queues} }
Feedback for Dagstuhl Publishing