The Fence Complexity of Persistent Sets
| dc.contributor.author | Coccimiglio, Gaetano | |
| dc.contributor.author | Brown, Trevor | |
| dc.contributor.author | Ravi, Srivatsan | |
| dc.date.accessioned | 2026-10-20T20:17:07Z | |
| dc.date.issued | 2023-09-30 | |
| dc.description | Accepted author manuscript of the SSS 2023 paper, 15 pages; the published edition is pp. 36–51. This peer-reviewed manuscript is not the Version of Record and excludes publisher production changes. Copyright 2023 the authors, under exclusive licence to Springer Nature Switzerland AG. Final authenticated version: https://doi.org/10.1007/978-3-031-44274-2_3. Use is subject to Springer Nature’s accepted-manuscript terms: https://www.springernature.com/gp/open-research/policies/accepted-manuscript-terms. Also includes the selected local 41-page expanded manuscript (2023), related to arXiv:2309.05230v1, which is not separately peer reviewed. PDFs unchanged; no new Creative Commons licence assigned. | |
| dc.description.abstract | We study the psync complexity of concurrent sets in the non-volatile shared memory model. Flush instructions are used in non-volatile memory to force shared state to be written back to non-volatile memory and must typically be accompanied by the use of expensive fence instructions to enforce ordering among such flushes. Collectively we refer to a flush and a fence as a psync. The safety property of strict linearizability forces crashed operations to take effect before the crash or not take effect at all; the weaker property of durable linearizability enforces this requirement only for operations that have completed prior to the crash event. We consider lock-free implementations of list-based sets and prove two lower bounds. We prove that for any durable linearizable lock-free set there must exist an execution where some process must perform at least one redundant psync as part of an update operation. We introduce an extension to strict linearizability specialized for persistent sets that we call strict limited effect (SLE) linearizability. SLE linearizability explicitly ensures that operations do not take effect after a crash which better reflects the original intentions of strict linearizability. We show that it is impossible to implement SLE linearizable lock-free sets in which read-only (or search) operations do not flush or fence. We undertake an empirical study of persistent sets that examines various algorithmic design techniques and the impact of flush instructions in practice. We present concurrent set algorithms that provide matching upper bounds and rigorously evaluate them against existing persistent sets to expose the impact of algorithmic design and safety properties on psync complexity in practice as well as the cost of recovering the data structure following a system crash. | |
| dc.description.sponsorship | Natural Sciences and Engineering Research Council of Canada, CRDPJ 539431-19, DGECR-2019-00048 and RGPIN-2019-04227 || Canada Foundation for Innovation John R. Evans Leaders Fund and matching Ontario Research Fund CFI Leaders Opportunity Fund, 38512 || University of Waterloo | |
| dc.identifier.uri | https://doi.org/10.1007/978-3-031-44274-2_3 | |
| dc.identifier.uri | https://hdl.handle.net/10012/24565 | |
| dc.language.iso | en | |
| dc.publisher | Springer Nature Switzerland | |
| dc.relation.ispartofseries | Stabilization, Safety, and Security of Distributed Systems (SSS 2023), Lecture Notes in Computer Science; 14310 | |
| dc.relation.uri | https://gitlab.com/Coccimiglio/setbench | |
| dc.subject | strict linearizability | |
| dc.subject | durable linearizability | |
| dc.subject | lower bounds | |
| dc.subject | persistent sets | |
| dc.subject | non-volatile memory | |
| dc.title | The Fence Complexity of Persistent Sets | |
| dc.type | Conference Paper | |
| dcterms.bibliographicCitation | Gaetano Coccimiglio, Trevor Brown, and Srivatsan Ravi. 2023. The Fence Complexity of Persistent Sets. In Stabilization, Safety, and Security of Distributed Systems (SSS 2023), Lecture Notes in Computer Science 14310, pp. 36–51. Springer Nature Switzerland. https://doi.org/10.1007/978-3-031-44274-2_3 | |
| uws.contributor.affiliation1 | Faculty of Mathematics | |
| uws.contributor.affiliation2 | David R. Cheriton School of Computer Science | |
| uws.peerReviewStatus | Reviewed | |
| uws.scholarLevel | Faculty | |
| uws.typeOfResource | Text | en |
Files
Original bundle
1 - 2 of 2
Loading...
- Name:
- cv-16-the-fence-complexity-of-persistent-sets.pdf
- Size:
- 916.73 KB
- Format:
- Adobe Portable Document Format
- Description:
- SSS 2023 accepted author manuscript, 15 pages; published edition pp. 36–51. Subject to Springer Nature’s accepted-manuscript terms; see record notice. PDF unchanged.
Loading...
- Name:
- cv-51-the-fence-complexity-of-persistent-sets.pdf
- Size:
- 1.16 MB
- Format:
- Adobe Portable Document Format
- Description:
- Selected local 41-page expanded manuscript (2023), related to arXiv:2309.05230v1. Not separately peer reviewed. Original PDF and notices unchanged.
License bundle
1 - 1 of 1
Loading...
- Name:
- license.txt
- Size:
- 4.47 KB
- Format:
- Item-specific license agreed upon to submission
- Description: