Modularising Verification Of Durable Opacity
Eleni Bila, John Derrick, Simon Doherty, Brijesh Dongol, Gerhard, Schellhorn, and Heike Wehrheim

TL;DR
This paper extends the concept of durable opacity for non-volatile memory in concurrent programming, develops a durably opaque version of an existing STM algorithm, and modularizes the verification process to separate durability from opacity proofs.
Contribution
It introduces a durably opaque version of NOrec and modularizes the verification approach to improve reusability and clarity of proofs.
Findings
Successfully developed a durably opaque NOrec algorithm.
Separated durability proof from opacity proof in verification.
Enhanced verification modularity for durable memory correctness.
Abstract
Non-volatile memory (NVM), also known as persistent memory, is an emerging paradigm for memory that preserves its contents even after power loss. NVM is widely expected to become ubiquitous, and hardware architectures are already providing support for NVM programming. This has stimulated interest in the design of novel concepts ensuring correctness of concurrent programming abstractions in the face of persistency and in the development of associated verification approaches. Software transactional memory (STM) is a key programming abstraction that supports concurrent access to shared state. In a fashion similar to linearizability as the correctness condition for concurrent data structures, there is an established notion of correctness for STMs known as opacity. We have recently proposed durable opacity as the natural extension of opacity to a setting with non-volatile memory. Together…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed systems and fault tolerance · Advanced Data Storage Technologies · Parallel Computing and Optimization Techniques
