Persistence and Synchronization: Friends or Foes?
Pradeep Fernando, Irina Calciu, Jayneel Gandhi, Aasheesh Kolli, Ada, Gavrilovska

TL;DR
This paper evaluates how combining crash-consistency and synchronization techniques affects the performance and correctness of transactional systems on emerging non-volatile memory hardware, considering hardware features and workload traits.
Contribution
It provides a comprehensive analysis of different crash-consistency and synchronization methods for NVM transactional systems, highlighting tradeoffs and guiding design choices.
Findings
Persistence domain significantly impacts system performance.
Application transaction size influences overhead and efficiency.
Hardware features like HTM support affect implementation choices.
Abstract
Emerging non-volatile memory (NVM) technologies promise memory speed byte-addressable persistent storage with a load/store interface. However, programming applications to directly manipulate NVM data is complex and error-prone. Applications generally employ libraries that hide the low-level details of the hardware and provide a transactional programming model to achieve crash-consistency. Furthermore, applications continue to expect correctness during concurrent executions, achieved through the use of synchronization. To achieve this, applications seek well-known ACID guarantees. However, realizing this presents designers of transactional systems with a range of choices in how to combine several low-level techniques, given target hardware features and workload characteristics. In this paper, we provide a comprehensive evaluation of the impact of combining existing crash-consistency…
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
