COSPlay: Leveraging Task-Level Parallelism for High-Throughput Synchronous Persistence
Marina Vemmou, Alexandros Daglis
Abstract
A key challenge in programming crash-consistent applications for Persistent Memory (PM) is achieving high performance while controlling the order of PM updates. Managing persist ordering from the CPU typically requires frequent synchronization points, which expose the PM's high persist latency on the execution's critical path. To mitigate this overhead, prior proposals relax the persistency model and decouple persistence from the program's volatile execution, delegating persistence ordering to specialized hardware mechanisms such that persistent state lags behind volatile state. In this work, we identify the opportunity to mitigate the effect of persist latency by leveraging the task-level parallelism available in many PM applications, while preserving the stricter semantics of synchronous persistence and the familiar x86 persistency model.
We introduce COSPlay, a software-hardware co-design that employs coroutines and rapid userspace context switching to hide persist latency by overlapping persist operations across concurrent tasks. Modest CPU extensions enable the hardware to fully overlap persists of different contexts, while preserving intra-context ordering to meet crash consistency requirements. COSPlay boosts the throughput of crash-consistent applications by up to 1.7× on systems with basic PM support. For systems with higher persist latency due to added backend memory operations, such as encryption and deduplication, COSPlay's performance gains grow to 2.2 -7.3×.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 31c5b44b-7c3e-4c36-a5ff-98d6ae0543d3Cited by top-tier papers1
Ask how each one uses itBuilds on5
- Pronto: Easy and Fast Persistence for Volatile Data StructuresAmir Saman Memaripour, Joseph Izraelevitz, Steven SwansonASPLOS 2020 · 55 citations
- MOD: Minimally Ordered Durable Datastructures for Persistent MemorySwapnil Haria, Mark D. Hill, Michael M. SwiftASPLOS 2020 · 47 citations
- CoroBase: Coroutine-Oriented Main-Memory Database EngineYongjun He, Jiacheng Lu, Tianzheng WangVLDB 2021 · 42 citations
- Relaxed Persist Ordering Using Strand PersistencyVaibhav Gogte, William Wang, Stephan Diestelhorst, Peter M. Chen et al.ISCA 2020 · 23 citations
- Lazy Release PersistencyMahesh Dananjaya, Vasilis Gavrielatos, Arpit Joshi, Vijay NagarajanASPLOS 2020 · 12 citations
Related papers
- Compiler-Directed Whole-System PersistenceJianping Zeng, Tong Zhang, Changhee JungISCA 2024 · 13 citations
- ASAP: A Speculative Approach to PersistenceSujay Yadalam, Nisarg Shah, Xiangyao Yu, Michael M. SwiftHPCA 2022 · 17 citations
- MadFS: Per-File Virtualization for Userspace Persistent Memory FilesystemsShawn Zhong, Chenhao Ye, Guanzhou Hu, Suyan Qu et al.FAST 2023 · 27 citations
- HybridPersist: A Compiler Support for User-Friendly and Efficient PM ProgrammingYiyu Zhang, Yongzhi Wang, Yanfeng Gao, Xuandong Li et al.OOPSLA 2025
- Reconciling Selective Logging and Hardware Persistent Memory TransactionChencheng Ye, Yuanchao Xu, Xipeng Shen, Yan Sha et al.HPCA 2023 · 4 citations
