MadFS: Per-File Virtualization for Userspace Persistent Memory Filesystems
summary
MadFS implements per-file virtualization and metadata embedding to move block maps, virtual size and a compact 8‑byte metadata log into file data so userspace can do copy‑on‑write and preallocation without kernel traps. It uses a library userspace PM filesystem with a lock-free optimistic concurrency control for cross‑process sync and nonblocking GC. Evaluation on ext4‑DAX, NOVA and SplitFS shows up to 3.6× throughput vs ext4‑DAX, 48% faster YCSB on LevelDB and 85% faster TPC‑C on SQLite, so the prototype improves concurrency and crash‑safe updates.
AI-written summary · about
chapters (11)
- 0:00Intro
- 0:31Background: Persistent Memory
- 0:59Background: Kernel Filesystems for PM
- 1:55Background: Userspace Filesystems for PN
- 6:02MadFS: Metadata Embedded Filesystem
- 6:38MadFS: Simplified Design
- 9:04MadFS: Metadata Management
- 10:01MadFS: Per-File Virtualization
- 12:56Evaluation: Concurrent 4 KB Random Read
- 13:28Evaluation: Concurrent 4 KB Random Overwrite
- 13:59Evaluation: TPC-C on SQLite
