Thread (52 messages) 52 messages, 6 authors, 2011-02-25

Re: too big min_free_kbytes

From: Simon Kirby <hidden>
Date: 2011-02-12 01:28:56

On Thu, Feb 03, 2011 at 08:11:57PM +0100, Andrea Arcangeli wrote:
On Thu, Feb 03, 2011 at 09:36:47AM -0500, Rik van Riel wrote:
quoted
On 02/02/2011 09:58 PM, Andrea Arcangeli wrote:
quoted
quoted
Subject: vmscan: kswapd must not free more than high_wmark pages
NAK

I believe we need a little bit of slack above high_wmark_pages,
to be able to even out memory pressure between zones.

Maybe free up to high_wmark_pages + min_wmark_pages ?
If this can only go in with high+min that's still better than *8, but
in prev email on this thread I explained why I think it's not
beneficial for lru balancing and this level can't affect kswapd wakeup
times either, so I personally prefer just "high". I don't think out of
memory has anything to do with this the "min" level is all about the
PF_MEMALLOC and OOM levels. The zone balancing as well has nothing to
do with this and the only "hard" thing that guarantees balancing is
the lowmem reserve ratio (high ptes allocated in lowmem zones aren't
relocatable etc..).
I was proposing before that the allocator fast path should use a weighted
(by zone size) round robin approach to the available zones, rather than
allocating from top down, so that reclaim would be fair rather than small
zones reclaiming stuff earlier than larger zones.

Riel pointed out that this 8*high_wmark_pages thing helped free a
proportional amount of stuff from the zone once the high_wmark was
breached, eventually causing allocation rates for each zone to end up
being close to the actual size of the zone. This happens because the
watermark values are set based on the size of the zone.

I still think this approach is a bit odd, since when kswapd first wakes
up, systems with multiple zones will reclaim things that aren't as old as
the stuff in the highest zone, until the system runs for a while and this
watermark thing balances the allocation rates. OTOH, changing the
allocator increases the possibility of some high-order DMA zone
allocation failing during boot that otherwise wouldn't.

Simon-

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help