Policies for transcending Linux memory efficiency with zcache

Registered by Dan Magenheimer

Zcache is the first Linux memory management capability that uses compression to dramatically increase RAM efficiency for
both the page cache and for swap pages. The mechanism has been in staging since 2.6.39, but has been complemented only by a very primitive policy. The key to promoting zcache to a full kernel citizen and, indeed, for turning zache into an enterprise-ready default feature is a bulletproof "first do no harm" policy that must improve performance on many workloads while avoiding performance degradation on others. We will present how zcache works, discuss core kernel memory management policies and how they might be extended to "harden" zcache, and solicit discussion on further improvements for zcache, as well as its Transcendent Memory brethren: RAMster, which builds on zcache and kernel sockets to load-balance RAM across a cluster, and Xen tmem and KVM tmem, which provide similar capability in a virtualized environment.

Linux plumbing connections: Page cache pages in zcache are mapped pages obtained via hooks in the VFS/filesystems (c.f.
cleancache); swap pages are obtained via hooks in the swap subsystem (c.f. frontswap). Increasing RAM efficiency ultimately
reduces the total RAM needed in a system, thus reducing capital and power costs across the data center.

Blueprint information

Status:
Not started
Approver:
None
Priority:
Undefined
Drafter:
None
Direction:
Needs approval
Assignee:
Dan Magenheimer
Definition:
New
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.