TY - GEN
T1 - Failure-atomic persistent memory updates via JUSTDO logging
AU - Izraelevitz, Joseph
AU - Kelly, Terence
AU - Kolli, Aasheesh
N1 - Publisher Copyright:
© 2016 ACM.
PY - 2016/3/25
Y1 - 2016/3/25
N2 - Persistent memory invites applications to manipulate persistent data via LOAD and STORE instructions. Because failures during updates may destroy transient data (e.g., in CPU registers), preserving data integrity in the presence of failures requires failure-atomic bundles of updates. Prior failure atomicity approaches for persistent memory entail overheads due to logging and CPU cache flushing. Persistent caches can eliminate the need for flushing, but conventional logging remains complex and memory intensive. We present the design and implementation of JUSTDO logging, a new failure atomicity mechanism that greatly reduces the memory footprint of logs, simplifies log management, and enables fast parallel recovery following failure. Crash-injection tests confirm that JUSTDO logging preserves application data integrity and performance evaluations show that it improves throughput 3× or more compared with a state-of-the-art alternative for a spectrum of data-intensive algorithms.
AB - Persistent memory invites applications to manipulate persistent data via LOAD and STORE instructions. Because failures during updates may destroy transient data (e.g., in CPU registers), preserving data integrity in the presence of failures requires failure-atomic bundles of updates. Prior failure atomicity approaches for persistent memory entail overheads due to logging and CPU cache flushing. Persistent caches can eliminate the need for flushing, but conventional logging remains complex and memory intensive. We present the design and implementation of JUSTDO logging, a new failure atomicity mechanism that greatly reduces the memory footprint of logs, simplifies log management, and enables fast parallel recovery following failure. Crash-injection tests confirm that JUSTDO logging preserves application data integrity and performance evaluations show that it improves throughput 3× or more compared with a state-of-the-art alternative for a spectrum of data-intensive algorithms.
UR - http://www.scopus.com/inward/record.url?scp=84975257893&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84975257893&partnerID=8YFLogxK
U2 - 10.1145/2872362.2872410
DO - 10.1145/2872362.2872410
M3 - Conference contribution
AN - SCOPUS:84975257893
T3 - International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS
SP - 427
EP - 442
BT - ASPLOS 2016 - 21st International Conference on Architectural Support for Programming Languages and Operating Systems
PB - Association for Computing Machinery
T2 - 21st International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2016
Y2 - 2 April 2016 through 6 April 2016
ER -