Persistent Processor Architecture

Persistent Processor Architecture
复制标题

DOI:
10.1145/3613424.3623772
复制
发表时间:
2023-10
期刊:
2023 56th IEEE/ACM International Symposium on Microarchitecture (MICRO)
影响因子:
--
通讯作者:
Jianping Zeng;Jungi Jeong;Changhee Jung
Jianping Zeng;Jungi Jeong;Changhee Jung
中科院分区:
其他
文献类型:
--
作者:
Jianping Zeng;Jungi Jeong;Changhee Jung

文献摘要

相似文献

本文提出了 PPA(持久处理器架构),这是一种简单的微架构,支持轻量级但高性能的全系统持久性。 PPA 为涵盖整个计算堆栈甚至遗留应用程序的各种程序提供完全透明的崩溃一致性,无需任何源代码更改或重新编译。作为崩溃一致性的基础,PPA 利用所谓的存储完整性,在程序执行期间保留存储操作数,在即将发生电源故障时保留它们,并在电源恢复时重放存储。特别是,尽管存储已提交,但 PPA 通过将操作数保留在物理寄存器文件 (PRF) 中,通过硬件实现存储完整性。这种存储完整性强制执行会导致区域级持久性,即每当 PRF 耗尽时,PPA 在确保先前区域的所有存储都已写入持久内存后启动一个新区域。为了最大限度地减少跨区域的管道停顿,PPA 异步写回每个区域的存储,将其持久延迟与该区域中其他指令的执行重叠。来自 SPEC CPU2006/2017、SPLASH3、STAMP、WHISPER 和 DOE Mini-apps 的 41 个应用程序的实验结果表明,PPA 仅产生 2% 的平均运行时间开销和 0.005% 的面积成本,而最先进的工作会遭受 26% 的开销以及过高的硬件和能源成本。
This paper presents PPA (Persistent Processor Architecture), simple microarchitectural support for lightweight yet performant whole-system persistence. PPA offers fully transparent crash consistency to all sorts of program covering the entire computing stack and even legacy applications without any source code change or recompilation. As a basis for crash consistency, PPA leverages so-called store integrity that preserves store operands during program execution, persists them on impending power failure, and replays the stores when power comes back. In particular, PPA realizes the store integrity via hardware by keeping the operands in a physical register file (PRF), though the stores are committed. Such store integrity enforcement leads to region-level persistence, i.e., whenever PRF runs out, PPA starts a new region after ensuring that all stores of the prior region have already been written to persistent memory. To minimize the pipeline stall across regions, PPA writes back the stores of each region asynchronously, overlapping their persistence latency with the execution of other instructions in the region. The experimental results with 41 applications from SPEC CPU2006/2017, SPLASH3, STAMP, WHISPER, and DOE Mini-apps show that PPA incurs only a 2% average run-time overhead and a 0.005% areal cost, while the state-of-the-art work suffers a 26% overhead along with prohibitively high hardware and energy costs.