Persistent HyTM via Fast Path Fine-Grained Locking
Utilizing hardware transactional memory (HTM) in conjunction with non-volatile memory (NVM) to achieve persistence is quite difficult and somewhat awkward due to the fact that the primitives utilized to write data to NVM will abort HTM transactions. We present several persistent hybrid transactional memory (HyTM) that, perhaps counterintuitively, utilize an HTM fast path primarily to read or acquire fine-grained locks which protect data items. Our implementations guarantee durable linearizable transactions and the STM path satisfies either weak progressiveness or strong progressiveness. We discuss the design choices related to the differing progress guarantees and we examine how these design choices impact performance. We evaluate our persistent HyTM implementations using various microbenchmarks. Despite the challenges and apparent awkwardness of using current implementations of HTM to achieve persistence, our implementations achieve up to 10x improved performance compared to the existing state of the art persistent STMs and up to 2.6x improved performance compared to the existing state of the art persistent HyTMs.
Authors
- Gaetano Coccimiglio (ORCID: https://orcid.org/0000-0001-5203-1923)
- Trevor Brown (ORCID: https://orcid.org/0000-0002-0074-1031)
- Srivatsan Ravi (ORCID: https://orcid.org/0000-0002-6536-9306)
Institutions
- University of Southern California (US)
- University of Waterloo (CA)
Publication Details
- Published
- 2025-07-16
- DOI
- https://doi.org/10.1145/3694906.3743314
- Primary Topic
- Distributed systems and fault tolerance
- Type
- article
- Field-Weighted Citation Impact
- 0.00
Funders
- University of Waterloo
- Natural Sciences and Engineering Research Council of Canada