Every Mapping Counts in Large Amounts: Folio Accounting
summary
Implements a Linux folio accounting scheme that uses the Pigeonhole principle plus a compressed per-folio address-space aggregator derived from small per-address-space IDs to tell if a folio is exclusively mapped with negligible overhead and sublinear memory growth. Patches (called fio_map) land in Linux and speed up fork by up to 1.9x, unmap by 4.2x, avoid redundant copy‑on‑write (Python test) and yield up to 2.2x on Redis by reliably detecting single‑address‑space folios.
AI-written summary · about
chapters (7)
- 0:00Folio accounting research
- 1:17Folio abstraction challenges
- 3:26Per-page map limits
- 5:52Address space aggregator
- 8:19Linux baseline evaluation
- 9:23Copy-on-write performance
- 10:48Conclusion
related talks
12mRethinking File Mapping for Persistent Memory
14mDecoupling Large Folios from Transparent Huge Pages
41mOverview of Linux Page Migration and Accelerating It With Multi-threading and DMA Of...
45mData Placement in Linux: Evolving Block and File I/O
32mIs Your Kernel Being Honest? Understanding & measuring low level bottlenecks
31mEnhancing Scalability of the Vmalloc Mechanism in the Linux Kernel
44mLarge Pages in Linux
42mAllocators for Compressed Pages: In-depth Comparison with z3fold in Focus
