Semantic Scholar Open Access 2022 15 sitasi

Yashme: detecting persistency races

Hamed Gorjiara G. Xu Brian Demsky

Abstrak

Persistent memory (PM) or Non-Volatile Random-Access Memory (NVRAM) hardware such as Intel’s Optane memory product promises to transform how programs store and manipulate information. Ensuring that persistent memory programs are crash consistent is a major challenge. We present a novel class of crash consistency bugs for persistent memory programs, which we call persistency races. Persistency races can cause non-atomic stores to be made partially persistent. Persistency races arise due to the interaction of standard compiler optimizations with persistent memory semantics. We present Yashme, the first detector for persistency races. A major challenge is that in order to detect persistency races, the execution must crash in a very narrow window between a store with a persistency race and its corresponding cache flush operation, making it challenging for naïve techniques to be effective. Yashme overcomes this challenge with a novel technique for detecting races in executions that are prefixes of the pre-crash execution. This technique enables Yashme to effectively find persistency races even if the injected crashes do not fall into that window. We have evaluated Yashme on a range of persistent memory benchmarks and have found 26 real persistency races that have never been reported before.

Topik & Kata Kunci

Penulis (3)

H

Hamed Gorjiara

G

G. Xu

B

Brian Demsky

Format Sitasi

Gorjiara, H., Xu, G., Demsky, B. (2022). Yashme: detecting persistency races. https://doi.org/10.1145/3503222.3507766

Akses Cepat

Lihat di Sumber doi.org/10.1145/3503222.3507766
Informasi Jurnal
Tahun Terbit
2022
Bahasa
en
Total Sitasi
15×
Sumber Database
Semantic Scholar
DOI
10.1145/3503222.3507766
Akses
Open Access ✓