Proceedings of the Seventeenth International Conference on Architectural Support for Programming Languages and Operating System 2012
DOI: 10.1145/2150976.2151018
|View full text |Cite
|
Sign up to set email alerts
|

Whole-system persistence

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
40
0

Year Published

2014
2014
2023
2023

Publication Types

Select...
4
3
1

Relationship

0
8

Authors

Journals

citations
Cited by 179 publications
(40 citation statements)
references
References 22 publications
0
40
0
Order By: Relevance
“…To avoid the need for additional cache-level hardware support [10] or the need to replace volatile with nonvolatile caches [32], NV-Logging takes advantage of wellknown hardware instructions to implement its consistency and persistence mechansims: (1) the clflush instruction supported in most processors flushes specified cache lines out to memory; (2) the mfence instruction is a hardware memory barrier that enforces the ordering of memory operations. An alternative solution is whole-system persistence [23], which can make the entire memory persistent upon failure. With hardware that has sufficient backup power sources, NVLogging can also achieve high performance with a flush-onfailure policy.…”
Section: Logging Persistencementioning
confidence: 99%
“…To avoid the need for additional cache-level hardware support [10] or the need to replace volatile with nonvolatile caches [32], NV-Logging takes advantage of wellknown hardware instructions to implement its consistency and persistence mechansims: (1) the clflush instruction supported in most processors flushes specified cache lines out to memory; (2) the mfence instruction is a hardware memory barrier that enforces the ordering of memory operations. An alternative solution is whole-system persistence [23], which can make the entire memory persistent upon failure. With hardware that has sufficient backup power sources, NVLogging can also achieve high performance with a flush-onfailure policy.…”
Section: Logging Persistencementioning
confidence: 99%
“…A cache line flush after every store to persistent memory followed by a fenced PCOMMIT can be used to ensure the ordering of writes into persistent memory. However, a failure within the atomic section will still leave the memory in an inconsistent state, and additional complex hardware mechanisms [1] to precisely restart the system are needed for recovery.…”
Section: Overviewmentioning
confidence: 99%
“…The flush software primitive proposed in [8] facilitates software control of update order. Ordering updates alone cannot guarantee atomicity of a sequence of updates, without a snapshot of the entire micro architectural state at the point of a failure [1]. A non-volatile victim cache to provide transactional buffering was proposed in [9], with the added property of not requiring logging; by comparison, our approach achieves efficiency through non-temporal write-combining streaming of log records.…”
Section: Related Workmentioning
confidence: 99%
“…Several works tried to mitigate the ordering overhead in persistent memory with hardware support [10,32,33,34,35]. These can be classified into two approaches:…”
Section: Mitigating the Ordering Overheadmentioning
confidence: 99%
“…Kiln also uses the NV-LLC as the log to eliminate the need to perform multiple writes in main memory. Whole-system persistence [35] takes this approach to the extreme by making all levels of the CPU cache non-volatile. The approach we develop in this paper, LOC, is complementary to the approach of employing NV caches.…”
Section: Mitigating the Ordering Overheadmentioning
confidence: 99%