TY - GEN
T1 - Software wear management for persistent memories
AU - Gogte, Vaibhav
AU - Wang, William
AU - Diestelhorst, Stephan
AU - Kolli, Aasheesh
AU - Chen, Peter M.
AU - Narayanasamy, Satish
AU - Wenisch, Thomas F.
N1 - Funding Information:
We would like to thank our shepherd, Carl Waldspurger, and the anonymous reviewers for their valuable feedback. We are grateful to Akshitha Sriraman, Kumar Aanjaneya, Neha Agarwal, Animesh Jain, and Amirhossein Mirhosseini for their suggestions that helped us improve this work. This work was supported by ARM and the National Science Foundation under the award NSF-CCF-1525372.
PY - 2019
Y1 - 2019
N2 - The commercial release of byte-addressable persistent memories (PMs) is imminent. Unfortunately, these devices suffer from limited write endurance—without any wear management, PM lifetime might be as low as 1.1 months. Existing wear-management techniques introduce an additional indirection layer to remap memory across physical frames and require hardware support to track fine-grain wear. These mechanisms incur storage overhead and increase access latency and energy consumption. We present Kevlar, an OS-based wear-management technique for PM that requires no new hardware. Kevlar uses existing virtual memory mechanisms to remap pages, enabling it to perform both wear leveling—shuffling pages in PM to even wear; and wear reduction—transparently migrating heavily written pages to DRAM. Crucially, Kevlar avoids the need for hardware support to track wear at fine grain. Instead, it relies on a novel wear-estimation technique that builds upon Intel’s Precise Event Based Sampling to approximately track processor cache contents via a software-maintained Bloom filter and estimate write-back rates at fine grain. We implement Kevlar in Linux and demonstrate that it achieves lifetime improvement of 18.4× (avg.) over no wear management while incurring 1.2% performance overhead.
AB - The commercial release of byte-addressable persistent memories (PMs) is imminent. Unfortunately, these devices suffer from limited write endurance—without any wear management, PM lifetime might be as low as 1.1 months. Existing wear-management techniques introduce an additional indirection layer to remap memory across physical frames and require hardware support to track fine-grain wear. These mechanisms incur storage overhead and increase access latency and energy consumption. We present Kevlar, an OS-based wear-management technique for PM that requires no new hardware. Kevlar uses existing virtual memory mechanisms to remap pages, enabling it to perform both wear leveling—shuffling pages in PM to even wear; and wear reduction—transparently migrating heavily written pages to DRAM. Crucially, Kevlar avoids the need for hardware support to track wear at fine grain. Instead, it relies on a novel wear-estimation technique that builds upon Intel’s Precise Event Based Sampling to approximately track processor cache contents via a software-maintained Bloom filter and estimate write-back rates at fine grain. We implement Kevlar in Linux and demonstrate that it achieves lifetime improvement of 18.4× (avg.) over no wear management while incurring 1.2% performance overhead.
UR - http://www.scopus.com/inward/record.url?scp=85077035988&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85077035988&partnerID=8YFLogxK
M3 - Conference contribution
AN - SCOPUS:85077035988
T3 - Proceedings of the 17th USENIX Conference on File and Storage Technologies, FAST 2019
SP - 45
EP - 63
BT - Proceedings of the 17th USENIX Conference on File and Storage Technologies, FAST 2019
PB - USENIX Association
T2 - 17th USENIX Conference on File and Storage Technologies, FAST 2019
Y2 - 25 February 2019 through 28 February 2019
ER -