Linux's Leap Beyond Fixed Pages
summary
Linux gains multi-sized transparent huge pages (mTHP) that allocate physically contiguous power-of-two page chunks at fault time, plus an enhanced background daemon (khugepaged) to build them asynchronously. On arm64 the contiguous-bit lets the TLB coalesce 64KB of translations, cutting TLB pressure; kernels with mTHP show real benchmarks — roughly 12% perf uplift on some configs and ~8% with 4KB→64KB tradeoffs — while suffering CoW, swap and allocation shattering, locking and fragmentation issues that ongoing patches and migration/locking changes aim to fix.
AI-written summary · about
chapters (9)
- 0:00Introduction to talk
- 1:03Virtual memory basics
- 9:15TLB and caching role
- 12:29Fixed page size limitations
- 14:59Huge pages introduction
- 18:13Transparent huge pages
- 20:04Multi-size transparent huge pages
- 25:51Kernel huge page daemon
- 33:48Q&A session
related talks
44mLarge Pages in Linux
43mHybrid THP Mechanism. Selective Use of Huge Pages by Hot Applications
30mFlexible Paging in Linux: Per-process Page Size
25mLarge Virtual Adress support in ARM64 kernel
39mMM101: Introduction to Linux Memory Management
14mDecoupling Large Folios from Transparent Huge Pages
28mMulti-Gen LRU: Current Status & Next Steps
44mLarge Virtual Address support (52-bit) in ARM64 kernel
