Silhouette: Leveraging Consistency Mechanisms to Detect Bugs in Persistent Memory-Based..
summary
Silhouette is a bug‑detector for persistent‑memory file systems that uses static instrumentation and data-type-based dynamic analysis to verify journaling/replication invariants, mark stores as protected, and then only reorder the remaining unprotected stores during crash exploration. It implements lightweight annotations (no source edits), runs on PMFS, Nova, and WinFS, and is open‑source. Evaluation shows orders‑of‑magnitude fewer crash plans, 10× faster bug finding than prior tools, and 15 new bugs discovered.
AI-written summary · about
chapters (13)
- 0:00Introduction to Silhouette and research background
- 1:42Out-of-order persistency
- 3:29Crash consistency explosion
- 5:19Inflight stores in PM
- 6:46Search space reduction
- 8:14Detecting consistency mechanisms
- 10:01Journaling invariants
- 11:05Implementation process
- 13:13Evaluation setup
- 14:16Bugs discovered
- 15:21Scalability results
- 15:43Summary and future
- 16:04Q&A
related talks
19mMemento: A Framework for Detectable Recoverability in Persistent Memory
14mSEPH: Scalable, Efficient, and Predictable Hashing on Persistent Memory
32mBuilding Reliable Infrastructure in Rust
20mRevisiting Secondary Indexing in LSM-based Storage Systems with Persistent Memory
19mPangolin: A Fault-Tolerant Persistent Memory Programming Library
01h 07mEmerging Embdedded Memories and Storage
35mDeveloping Software for Persistent Memory
15mTIPS: Making Volatile Index Structures Persistent with DRAM-NVMM Tiering
