diff options
author | Christoph Lameter <clameter@engr.sgi.com> | 2006-02-01 06:05:35 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-02-01 11:53:16 -0500 |
commit | 2a16e3f4b0c408b9e50297d2ec27e295d490267a (patch) | |
tree | 71569cfdf06fb83497e88e4e6543fbe624488aa3 /Documentation/sysctl | |
parent | 1b2ffb7896ad46067f5b9ebf7de1891d74a4cdef (diff) |
[PATCH] Reclaim slab during zone reclaim
If large amounts of zone memory are used by empty slabs then zone_reclaim
becomes uneffective. This patch shakes the slab a bit.
The problem with this patch is that the slab reclaim is not containable to a
zone. Thus slab reclaim may affect the whole system and be extremely slow.
This also means that we cannot determine how many pages were freed in this
zone. Thus we need to go off node for at least one allocation.
The functionality is disabled by default.
We could modify the shrinkers to take a zone parameter but that would be quite
invasive. Better ideas are welcome.
Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'Documentation/sysctl')
-rw-r--r-- | Documentation/sysctl/vm.txt | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/Documentation/sysctl/vm.txt b/Documentation/sysctl/vm.txt index 4bca2a3d9174..a46c10fcddfc 100644 --- a/Documentation/sysctl/vm.txt +++ b/Documentation/sysctl/vm.txt | |||
@@ -137,6 +137,7 @@ This is value ORed together of | |||
137 | 1 = Zone reclaim on | 137 | 1 = Zone reclaim on |
138 | 2 = Zone reclaim writes dirty pages out | 138 | 2 = Zone reclaim writes dirty pages out |
139 | 4 = Zone reclaim swaps pages | 139 | 4 = Zone reclaim swaps pages |
140 | 8 = Also do a global slab reclaim pass | ||
140 | 141 | ||
141 | zone_reclaim_mode is set during bootup to 1 if it is determined that pages | 142 | zone_reclaim_mode is set during bootup to 1 if it is determined that pages |
142 | from remote zones will cause a measurable performance reduction. The | 143 | from remote zones will cause a measurable performance reduction. The |
@@ -160,6 +161,11 @@ Allowing regular swap effectively restricts allocations to the local | |||
160 | node unless explicitly overridden by memory policies or cpuset | 161 | node unless explicitly overridden by memory policies or cpuset |
161 | configurations. | 162 | configurations. |
162 | 163 | ||
164 | It may be advisable to allow slab reclaim if the system makes heavy | ||
165 | use of files and builds up large slab caches. However, the slab | ||
166 | shrink operation is global, may take a long time and free slabs | ||
167 | in all nodes of the system. | ||
168 | |||
163 | ================================================================ | 169 | ================================================================ |
164 | 170 | ||
165 | zone_reclaim_interval: | 171 | zone_reclaim_interval: |