5–7 Oct 2026
Europe/Prague timezone

A Compressed RAM Service

5 Oct 2026, 10:05
30m
"Small Theatre" (Prague Congress Centre)

"Small Theatre"

Prague Congress Centre

105
Device and Specific Purpose Memory MC Device and Specific Purpose Memory MC

Speaker

Gregory Price (Meta)

Description

Compressed RAM (where hardware offloads compression) presents a particularly novel problem for the kernel: the device fundamentally lies about its true capacity - while the kernel is written to assume any struct page it can get will always be backed by real capacity.

Unlike zswap/zram - these devices provide cacheline/byte access to compressed memory, their memory can remain page-table mapped and page-cache present without generate faults on read-access (no COW, no software decompression step etc).

Lets discuss what it would take to formalize support for a compressed RAM service that otherwise "looks like" normal memory (migratable, mappable, page-cache-able - but maybe not directly writable).

All but one feature required to achieve support already exists in the kernel (or has existed at one time).

  1. Anon Memory support: Page Table Write Protection (COW, KSM)
  2. Page Cache support: Clean Cache (clean page eligible only)
  3. Reclaim and Demotion
  4. Memory Ballooning (dynamic sizing)
  5. Free Page Reporting (stale data trimming)
  6. Memory Tiering (Hotness / NUMA Balancing)
  7. Strictly controlled NUMA memory allocation (private nodes)

I will present a tested compressed ram service (mm/cram.c) that achieves near-native performance to DRAM under TAOBench and FIO benchmarks, and has been tested under most in-tree filesystems for pagecache correctness.

Author

Presentation materials

There are no materials yet.