COSPlay: Leveraging Task-Level Parallelism for High-Throughput Synchronous Persistence
Marina Vemmou, Alexandros Daglis
摘要
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×.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper1
问问它们各自怎么用它它引用的顶会 Paper5
- Pronto: Easy and Fast Persistence for Volatile Data StructuresAmir Saman Memaripour, Joseph Izraelevitz, Steven SwansonASPLOS 2020 · 被引用 55 次
- MOD: Minimally Ordered Durable Datastructures for Persistent MemorySwapnil Haria, Mark D. Hill, Michael M. SwiftASPLOS 2020 · 被引用 47 次
- CoroBase: Coroutine-Oriented Main-Memory Database EngineYongjun He, Jiacheng Lu, Tianzheng WangVLDB 2021 · 被引用 42 次
- Relaxed Persist Ordering Using Strand PersistencyVaibhav Gogte, William Wang, Stephan Diestelhorst, Peter M. Chen 等ISCA 2020 · 被引用 23 次
- Lazy Release PersistencyMahesh Dananjaya, Vasilis Gavrielatos, Arpit Joshi, Vijay NagarajanASPLOS 2020 · 被引用 12 次
相关 Paper
- Compiler-Directed Whole-System PersistenceJianping Zeng, Tong Zhang, Changhee JungISCA 2024 · 被引用 13 次
- ASAP: A Speculative Approach to PersistenceSujay Yadalam, Nisarg Shah, Xiangyao Yu, Michael M. SwiftHPCA 2022 · 被引用 17 次
- MadFS: Per-File Virtualization for Userspace Persistent Memory FilesystemsShawn Zhong, Chenhao Ye, Guanzhou Hu, Suyan Qu 等FAST 2023 · 被引用 27 次
- HybridPersist: A Compiler Support for User-Friendly and Efficient PM ProgrammingYiyu Zhang, Yongzhi Wang, Yanfeng Gao, Xuandong Li 等OOPSLA 2025
- Reconciling Selective Logging and Hardware Persistent Memory TransactionChencheng Ye, Yuanchao Xu, Xipeng Shen, Yan Sha 等HPCA 2023 · 被引用 4 次
