Memory tiering acts on pages. Applications act on objects. A 4KB page can contain one frequently accessed index node beside many untouched values. The operating system observes the page access and keeps all of it in DRAM, even if nearly every byte is cold. OBASE calls this hotness fragmentation.
Six Google workload traces accessed only 1.7% to 21.3% of bytes during their windows; four accessed below 3%. Yet page-level activity was much larger. In one example, 3.2% of bytes were touched across 91.8% of pages. Across workloads, as much as 97% of bytes within active pages were cold. The gap explains why production compressed-memory deployments offload roughly 20% to 32% rather than the theoretical 80% to 98% cold-byte fraction.
OBASE changes the virtual address layout so objects with similar access intensity share pages. It remains a front end to ordinary page reclaim and tiering. Kswapd, TMO, TPP, AutoNUMA, or Memtis still decide which pages move; they receive better page candidates without a new object-aware kernel interface.
Pointer instrumentation creates a movable object boundary
Unmanaged languages expose raw pointers that can outlive a function call. Moving an object while another thread holds its address can redirect a read or write to freed memory. OBASE therefore requires developers to mark relocatable pointer-based structures and access them through a guide that resolves the current object location.
Compiler instrumentation records accesses with lightweight per-thread metadata. Objects begin in a NEW heap, where the runtime observes their behavior. Frequently accessed objects move to a HOT heap; sufficiently inactive ones move to COLD. Separate heaps turn object temperature into spatial layout, raising the fraction of accessed bytes within hot pages and creating cold pages with no hot passengers.
Migration uses an epoch and active-thread count. A thread entering an object increments state and verifies that migration did not begin concurrently. The collector moves only an object with no active accessor, publishes the new location, and leaves pointer resolution to the guide. Failed compare-and-swap operations abort or defer movement rather than stop application threads globally.

The controller targets a promotion rate, not a fixed age
Object temperature changes. A key cold during one interval can become popular after a deployment or traffic shift. OBASE scans heaps and adapts its cold threshold so promotions from cold back to hot remain around a 1% target. A high promotion rate raises the threshold, keeping objects in DRAM longer; a low rate permits more aggressive classification.
Convergence typically took three to four scan intervals in the evaluated structures. Read-only workloads eventually placed almost all accessed objects in HOT and reached page utilization near 80%. A workload with 5% writes reached about 70%, while one with 50% writes roughly doubled utilization to around 40% because new and changing objects remained mixed longer.
The target is an operational risk knob. A 1% object promotion rate does not directly mean 1% of requests stall. Promoted objects differ in size and access criticality, and a slow tier’s latency determines penalty. Operators should measure promoted bytes, synchronous faults, p99 request latency, and controller response after phase change.
Better pages let conservative reclaimers become aggressive
The reclamation experiment used CrestDB with MassTree, a 13GiB footprint, and a 4GiB active object set. Kswapd alone reduced RSS to 7GiB without throughput loss. More aggressive cgroup pressure reached about 4GiB but cut throughput 38% because mixed pages evicted hot objects. TMO stopped near 6.5GiB because pressure signals also saw mixed activity.
With OBASE, backends reclaimed 65% to 72% of RSS while preserving throughput. Cold pages contained almost exclusively inactive objects, so paging did not create a swap-in storm. The result is not a faster pager; it changes which pages are safe for the same pager to select.
Tiering tests loaded 67GiB with 50 million MassTree keys and varied DRAM-to-Optane ratios from 1:4 through 1:16. Without reorganization, the apparent working set occupied 16.3GiB of pages at 21% utilization, larger than the 14.8GiB DRAM budget at 1:4. OBASE compacted it to 6.33GiB at 57% utilization.
TPP with OBASE reached 1.85 times the CXL/Optane-only baseline at 1:4 and retained 1.45 times at 1:16. Memtis improved from 1.8 to 1.95 times at 1:4 and from 1.55 to 1.7 times at 1:16. At a 1:8 ratio, OBASE plus TPP matched the performance of TPP alone at the larger 1:4 DRAM allocation, effectively halving fast-tier capacity for that workload.
Production traces preserve savings under changing popularity
Meta CacheLib and two Twitter cache traces drove ART in CrestDB. OBASE improved page utilization 1.8 to 3.4 times. Hinted reclamation reduced RSS 36% to 58% compared with no reclaim, and OBASE plus TMO saved another 15% to 30% relative to TMO alone.
One workload shift briefly raised promotion rate to 14%. The adaptive threshold recovered to below the 1% target within minutes. The spike shows that reorganization cannot predict a new hot set; it bounds recovery after observing it. Enough DRAM headroom is still required during transition so promoted pages do not crowd out current hot data.
Average no-tier overhead was a 2.5% throughput decrease and a 5% p90 latency increase. Hash tables paid 1.5% to 3%, while skip lists, B+ trees, and ART paid 3% to 5%. From two to 32 threads, overhead remained within 1% to 8%, and the collector used under 1% of one CPU.
These figures assume supported object shapes. Contiguous arrays, matrices, packed layouts, pointer arithmetic, aliases owned by multiple guides, and addresses retained outside the access discipline can prevent safe relocation. The compiler rejects some patterns, but porting effort and missed aliases remain deployment costs.
Address-space engineering is not transparent memory tiering
OBASE leaves the operating system unchanged but changes applications. A structure must declare ownership, replace direct pointer dereferences with guides, and tolerate object movement. Third-party libraries, language runtimes, device DMA, kernel interfaces, and persistent pointers may not meet those constraints.
Object migration copies bytes and changes virtual addresses. Cache locality can improve when hot objects cluster, but pointer resolution adds instructions and metadata. Large objects spanning pages or tiny objects embedded in slabs need different handling. Allocator fragmentation within HOT and COLD heaps also determines how closely object classification becomes page uniformity.
Correctness testing should race migration with lookup, insert, delete, iterator retention, and reclamation. Sanitizers need to understand forwarding state so they do not mask use-after-move errors. Crash dumps and profilers should symbolize both original object identity and current location.
Security and isolation can benefit or regress. Grouping objects by temperature exposes a workload signal in address layout that an observer may use as a side channel. Conversely, clustering tenant or sensitivity classes could strengthen page-level isolation. The classification metadata should not cross security domains without policy.
The capacity metric is reclaimable cold pages
Fleet planning often reports cold bytes and assumes they translate into cheap-tier capacity. OBASE shows that the actionable quantity is cold pages after allocation and object mixing. A memory-tiering evaluation should publish byte hotness, page hotness, page utilization, promoted bytes, reclaimed RSS, backend faults, and application latency together.
The strongest fit is a large pointer-based cache or index in C/C++ whose objects can be moved through a disciplined access wrapper. It is weaker for arrays, pointer-rich graphs with shared aliases, kernel-pinned buffers, and software whose source cannot be changed. Managed runtimes already move objects but would need temperature-aware layout rather than OBASE’s unmanaged-pointer machinery.
The reported 36% to 70% memory reductions and 2% to 5% typical overhead show that layout can unlock hardware already deployed. The result does not eliminate slow-tier latency; it prevents hot objects from dragging cold neighbors into the fast tier. In a datacenter where DRAM can represent half of server capital cost, that granularity correction can be more valuable than another page-selection heuristic.
Source and copyright notice
This article is an editorial analysis by Silicon & Systems. It restates the design, measurements, and limitations in our own words. No source sentence, table, or figure is reproduced; the figure was created for this article. The paper is available from the USENIX OSDI 2026 presentation page. Copyright remains with the authors, 2026.