summaryrefslogtreecommitdiffstats
path: root/drivers/staging/zcache/Kconfig
blob: 73582705e8c5bc71081494a7e4481b7eb36d42e8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
config ZCACHE
	bool "Dynamic compression of swap pages and clean pagecache pages"
	depends on CRYPTO=y && SWAP=y && CLEANCACHE && FRONTSWAP
	select CRYPTO_LZO
	default n
	help
	  Zcache doubles RAM efficiency while providing a significant
	  performance boosts on many workloads.  Zcache uses
	  compression and an in-kernel implementation of transcendent
	  memory to store clean page cache pages and swap in RAM,
	  providing a noticeable reduction in disk I/O.

config RAMSTER
	bool "Cross-machine RAM capacity sharing, aka peer-to-peer tmem"
	depends on CONFIGFS_FS=y && SYSFS=y && !HIGHMEM && ZCACHE=y
	depends on NET
	# must ensure struct page is 8-byte aligned
	select HAVE_ALIGNED_STRUCT_PAGE if !64_BIT
	default n
	help
	  RAMster allows RAM on other machines in a cluster to be utilized
	  dynamically and symmetrically instead of swapping to a local swap
	  disk, thus improving performance on memory-constrained workloads
	  while minimizing total RAM across the cluster.  RAMster, like
	  zcache2, compresses swap pages into local RAM, but then remotifies
	  the compressed pages to another node in the RAMster cluster.

# Depends on not-yet-upstreamed mm patches to export end_swap_bio_write and
# __add_to_swap_cache, and implement __swap_writepage (which is swap_writepage
# without the frontswap call. When these are in-tree, the dependency on
# BROKEN can be removed
config ZCACHE_WRITEBACK
	bool "Allow compressed swap pages to be writtenback to swap disk"
	depends on ZCACHE=y && BROKEN
	default n
	help
	  Zcache caches compressed swap pages (and other data) in RAM which
	  often improves performance by avoiding I/O's due to swapping.
	  In some workloads with very long-lived large processes, it can
	  instead reduce performance.  Writeback decompresses zcache-compressed
	  pages (in LRU order) when under memory pressure and writes them to
	  the backing swap disk to ameliorate this problem.  Policy driving
	  writeback is still under development.