[lc-checkins] CVS: linux/Documentation Configure.help,1.5,1.6
Status: Beta
Brought to you by:
nitin_sf
|
From: Rodrigo S. de C. <rc...@us...> - 2002-04-28 20:52:06
|
Update of /cvsroot/linuxcompressed/linux/Documentation
In directory usw-pr-cvs1:/tmp/cvs-serv2510/Documentation
Modified Files:
Configure.help
Log Message:
This version features a first non-functional version of compressed
cache automatic automatic adaptivity to system behaviour. It also has
many changes aiming to fix the performance drop we have in linux
kernel compilation test (check statistics for 0.23pre1 on our web
site). Our analysis isn't complete and more changes are likely to go
since a huge percentage of CPU is still not being used. Anyway, the
current changes improve compressed cache a lot, mainly compressed
cache support for page cache, and it already works much better in that
scenario.
Some detailed changes:
- Configuration options changes. Now we only make compressed cache
option available if SMP is turned off. Page cache support is an
option, that is disabled by default. There's also an option to enable
adaptivity, which is currently non-functional.
- There's no option in kernel configuration to select initial
compressed cache size any longer. It can be selected only by kernel
parameter. This parameter won't be available when adaptivity option is
enabled (since the system will configure compressed cache
automatically). In this case, initial compressed cache size is 10% of
total memory size.
- Functions cleanup: all algorithms functions and related stuff are
now in proc.c file; statistics functions were rewritten and are
simpler.
- New statistics are collected by the system, like a per-cache
analysis (swap and page cache). Statistics is much more complete and
nicer.
- Now there are functions that force the VM to skip writing dirty
buffer, shrinking slab cache, dcache and icache, since we want the
system to put much more pressure on pages from page and swap cache in
order to have these kind of pages compressed.
- Pages are removed from compressed cache in swapin if the process has
write permissions. Since the pte will be set dirty, the page will be
surely compressed again, so why keep it in the compressed cache?
- If we are swapping in and the page is not present in swap cache, we
no longer read a cluster of pages from swap device if the page is in
compressed cache. This conceptual bug forced us to read many pages
from swap device if the page was compressed in our cache, what's
wrong. The same way, that happened when a file entry was faulted in
and we service this fault. Beforehand we were forcing a cluster read
even if the page were present in compressed cache.
Index: Configure.help
===================================================================
RCS file: /cvsroot/linuxcompressed/linux/Documentation/Configure.help,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -r1.5 -r1.6
*** Configure.help 26 Feb 2002 20:59:01 -0000 1.5
--- Configure.help 28 Apr 2002 20:51:32 -0000 1.6
***************
*** 377,383 ****
gigabytes of physical RAM.
! Compressed Cache
CONFIG_COMP_CACHE
! Select this if you want to enable Compressed Cache support. If this
option is chosen, your memory will be split into two caches:
uncompressed cache, which holds pages in normal state; and
--- 377,383 ----
gigabytes of physical RAM.
! Compressed cache (EXPERIMENTAL)
CONFIG_COMP_CACHE
! Select this if you want to enable compressed cache support. If this
option is chosen, your memory will be split into two caches:
uncompressed cache, which holds pages in normal state; and
***************
*** 386,399 ****
system performance.
If unsure, say N here.
! Maximum Compressed Cache Size (Memory Pages)
! CONFIG_COMP_CACHE_SIZE
! Here you choose the maximum number of memory pages used by the
! Compressed Cache. If the number is greater than half of memory size,
! it will set to 512, the default value.
! The maximum value will be not necessarily used and can be configured
! on-the-fly by /proc/sys/vm/comp_cache/size entry.
Normal floppy disk support
--- 386,414 ----
system performance.
+ Initial number of pages reserved for compressed cache is set by the
+ kernel parameter "compsize=N", where N is a number of memory pages.
+
+ If unsure, say N here.
+
+ Support for Page Cache compression
+ CONFIG_COMP_PAGE_CACHE
+ Select this option in case you want compressed cache to store also
+ pages from page cache, ie file mapped pages, and to take into
+ account these pages when adapting compressed cache to recent
+ behaviour. If you don't select this option, compressed cache will
+ store only anonymous pages, ie pages not mapped to files.
+
If unsure, say N here.
! Automatic adaptivity for compressed cache size
! CONFIG_COMP_ADAPTIVITY
! Select this option in case you want compressed cache to adapt its
! size to the system behaviour. That way, current code will
! automatically compute the cost and benefit of several compressed
! cache sizes, choosing the best size for whole system performance.
!
! This option is still not functional.
! If unsure, say N here.
Normal floppy disk support
|