Thread (14 messages) 14 messages, 4 authors, 2010-03-01

Re: [PATCH] powerpc: Set a smaller value for RECLAIM_DISTANCE to enable zone reclaim

From: Balbir Singh <hidden>
Date: 2010-02-19 15:41:29

On Fri, Feb 19, 2010 at 8:42 PM, Christoph Lameter
[off-list ref] wrote:
On Fri, 19 Feb 2010, Mel Gorman wrote:
quoted
quoted
quoted
The patch below sets a smaller value for RECLAIM_DISTANCE and thus e=
nables
quoted
quoted
quoted
zone reclaim.
I've no problem with the patch anyway.
Nor do I.
quoted
quoted
- We seem to end up racing between zone_watermark_ok, zone_reclaim and
=A0 buffered_rmqueue. Since everyone is in here the memory one thread =
reclaims
quoted
quoted
=A0 may be stolen by another thread.
You're pretty much on the button here. Only one thread at a time enters
zone_reclaim. The others back off and try the next zone in the zonelist
instead. I'm not sure what the original intention was but most likely it
was to prevent too many parallel reclaimers in the same zone potentially
dumping out way more data than necessary.
Yes it was to prevent concurrency slowing down reclaim. At that time the
number of processors per NUMA node was 2 or so. The number of pages that
are reclaimed is limited to avoid tossing too many page cache pages.
That is interesting, I always thought it was to try and free page
cache first. For example with zone->min_unmapped_pages, if
zone_pagecache_reclaimable is greater than unmapped pages, we start
reclaim the cached pages first. The min_unmapped_pages almost sounds
like the higher level watermark - or am I misreading the code.

Balbir Singh
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help