2 bool "Dynamic compression of swap pages and clean pagecache pages"
3 depends on CRYPTO=y && SWAP=y && CLEANCACHE && FRONTSWAP
7 Zcache doubles RAM efficiency while providing a significant
8 performance boosts on many workloads. Zcache uses
9 compression and an in-kernel implementation of transcendent
10 memory to store clean page cache pages and swap in RAM,
11 providing a noticeable reduction in disk I/O.
14 bool "Enable debug statistics"
15 depends on DEBUG_FS && ZCACHE
19 This is used to provide an debugfs directory with counters of
20 how zcache is doing. You probably want to set this to 'N'.
23 bool "Cross-machine RAM capacity sharing, aka peer-to-peer tmem"
24 depends on CONFIGFS_FS=y && SYSFS=y && !HIGHMEM && ZCACHE=y
26 # must ensure struct page is 8-byte aligned
27 select HAVE_ALIGNED_STRUCT_PAGE if !64_BIT
30 RAMster allows RAM on other machines in a cluster to be utilized
31 dynamically and symmetrically instead of swapping to a local swap
32 disk, thus improving performance on memory-constrained workloads
33 while minimizing total RAM across the cluster. RAMster, like
34 zcache2, compresses swap pages into local RAM, but then remotifies
35 the compressed pages to another node in the RAMster cluster.
37 # Depends on not-yet-upstreamed mm patches to export end_swap_bio_write and
38 # __add_to_swap_cache, and implement __swap_writepage (which is swap_writepage
39 # without the frontswap call. When these are in-tree, the dependency on
40 # BROKEN can be removed
41 config ZCACHE_WRITEBACK
42 bool "Allow compressed swap pages to be writtenback to swap disk"
43 depends on ZCACHE=y && BROKEN
46 Zcache caches compressed swap pages (and other data) in RAM which
47 often improves performance by avoiding I/O's due to swapping.
48 In some workloads with very long-lived large processes, it can
49 instead reduce performance. Writeback decompresses zcache-compressed
50 pages (in LRU order) when under memory pressure and writes them to
51 the backing swap disk to ameliorate this problem. Policy driving
52 writeback is still under development.