ASAP: A Speculative Approach to Persistence
ASAP: A Speculative Approach to Persistence
复制标题
DOI:
10.1109/hpca53966.2022.00070
复制
发表时间:
2022-04
期刊:
影响因子:
--
通讯作者:
Sujay Yadalam;Nisarg Shah;Xiangyao Yu;M. Swift
中科院分区:
文献类型:
--
作者:
Sujay Yadalam;Nisarg Shah;Xiangyao Yu;M. Swift
Persistent memory enables a new class of applications that have persistent in-memory data structures. Recoverability of these applications imposes constraints on the ordering of writes to persistent memory. But, the cache hierarchy and memory controllers in modern systems may reorder writes to persistent memory. Therefore, programmers have to use expensive flush and fence instructions that stall the processor to enforce such ordering. While prior efforts circumvent stalling on long latency flush instructions, these designs under-perform in large-scale systems with many cores and multiple memory controllers.We propose ASAP, an architectural model in which the hardware takes an optimistic approach by persisting data eagerly, thereby avoiding any ordering stalls and utilizing the total system bandwidth efficiently. ASAP avoids stalling by allowing writes to be persisted out-of-order, speculating that all writes will eventually be persisted. For correctness, ASAP saves recovery information in the memory controllers which is used to undo the effects of speculative writes to memory in the event of a crash.Over a large number of representative workloads, ASAP improves performance over current Intel systems by 2.3 on average and performs within 3.9% of an ideal system.