Re: Free memory never fully used, swapping

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Simon Kirby
Date: Tuesday, November 30, 2010 - 1:22 am

On Thu, Nov 25, 2010 at 04:12:38PM +0000, Mel Gorman wrote:


This seemed to be the case.  DMA32 would be freed until watermarks were
met, and then it would fight order-0 allocations in Normal to try to meet
the watermark there, even though DMA32 had more than enough free.


Since slub has a fallback to s->min (order 0 in this case), I think it
makes sense to make a GFP_NOBALANCE / GFP_NOKSWAPD, or GFP_NORECLAIM
(allow compaction if compiled, since slub's purpose is to reduce object
container waste).


The part of your patch that fixes the SWAP_CLUSTER_MAX also increases
this chance.


Ok, so this patch has been running in production since Friday, and there
is a definite improvement in our case.  The reading of daemons and core
system stuff back into memory all the time from /dev/sda has stopped,
since kswapd now actually sleeps.  Since this allows caching to work, we
can keep swap enabled.  However, my userspace reimplementation of
zone_watermark_ok(order=3) shows that order-3 is almost never reached
now.  It's not freeing The Right Stuff, or not enough of it before
SWAP_CLUSTER_MAX.

Also, as the days go by, it is still keeping more and more free memory. 
my whitespace-compressed buddyinfo+extras right now shows:

 DMA32  234402    493     2     3    2   2  2 0 0 0 0  235644 249 <= 512
Normal     369      5     3     7    1   0  0 0 0 0 0     463 87 <= 238

So, the order-3 watermarks are still not met, and the free order-0 free
pages seems to keep rising.  Here is the munin memory graph of the week:

	http://0x.ca/sim/ref/2.6.36/memory_mel_patch_4days.png

Things seem to be drifting to kswapd reclaiming order-0 in a way that
doesn't add up to more order-3 blocks available, so fragmentation is
increasing.

You mentioned that there was some mechanism to have it actually target
allocations that could be made into higher order allocations?

Simon-

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Free memory never fully used, swapping, Simon Kirby, (Mon Nov 15, 12:52 pm)
Re: Free memory never fully used, swapping, Andrew Morton, (Mon Nov 22, 4:44 pm)
Re: Free memory never fully used, swapping, Simon Kirby, (Mon Nov 22, 6:34 pm)
Re: Free memory never fully used, swapping, Dave Hansen, (Tue Nov 23, 1:35 am)
Re: Free memory never fully used, swapping, Mel Gorman, (Tue Nov 23, 3:04 am)
Re: Free memory never fully used, swapping, Simon Kirby, (Tue Nov 23, 11:43 pm)
Re: Free memory never fully used, swapping, Simon Kirby, (Wed Nov 24, 1:46 am)
Re: Free memory never fully used, swapping, Mel Gorman, (Wed Nov 24, 2:27 am)
Re: Free memory never fully used, swapping, Simon Kirby, (Wed Nov 24, 12:17 pm)
Re: Free memory never fully used, swapping, Shaohua Li, (Wed Nov 24, 6:07 pm)
Re: Free memory never fully used, swapping, KOSAKI Motohiro, (Wed Nov 24, 6:18 pm)
Re: Free memory never fully used, swapping, Simon Kirby, (Thu Nov 25, 2:03 am)
Re: Free memory never fully used, swapping, KOSAKI Motohiro, (Thu Nov 25, 3:18 am)
Re: Free memory never fully used, swapping, KOSAKI Motohiro, (Thu Nov 25, 3:51 am)
Re: Free memory never fully used, swapping, Mel Gorman, (Thu Nov 25, 9:12 am)
Re: Free memory never fully used, swapping, Mel Gorman, (Thu Nov 25, 9:15 am)
Re: Free memory never fully used, swapping, Simon Kirby, (Thu Nov 25, 10:13 am)
Re: Free memory never fully used, swapping, KOSAKI Motohiro, (Thu Nov 25, 5:07 pm)
Re: Free memory never fully used, swapping, KOSAKI Motohiro, (Thu Nov 25, 5:33 pm)
Re: Free memory never fully used, swapping, Shaohua Li, (Thu Nov 25, 6:05 pm)
Re: Free memory never fully used, swapping, Mel Gorman, (Thu Nov 25, 6:25 pm)
Re: Free memory never fully used, swapping, Shaohua Li, (Thu Nov 25, 7:00 pm)
Re: Free memory never fully used, swapping, Shaohua Li, (Thu Nov 25, 7:05 pm)
Re: Free memory never fully used, swapping, KOSAKI Motohiro, (Thu Nov 25, 7:31 pm)
Re: Free memory never fully used, swapping, Shaohua Li, (Thu Nov 25, 7:40 pm)
Re: Free memory never fully used, swapping, KOSAKI Motohiro, (Fri Nov 26, 2:18 am)
Re: Free memory never fully used, swapping, KOSAKI Motohiro, (Fri Nov 26, 4:03 am)
Re: Free memory never fully used, swapping, Mel Gorman, (Fri Nov 26, 4:11 am)
Re: Free memory never fully used, swapping, Christoph Lameter, (Fri Nov 26, 8:48 am)
Re: Free memory never fully used, swapping, Shaohua Li, (Sun Nov 28, 6:03 pm)
Re: Free memory never fully used, swapping, KOSAKI Motohiro, (Sun Nov 28, 6:13 pm)
Re: Free memory never fully used, swapping, KOSAKI Motohiro, (Mon Nov 29, 2:31 am)
Re: Free memory never fully used, swapping, KOSAKI Motohiro, (Mon Nov 29, 5:25 pm)
Re: Free memory never fully used, swapping, KOSAKI Motohiro, (Mon Nov 29, 11:31 pm)
Re: Free memory never fully used, swapping, Simon Kirby, (Tue Nov 30, 1:22 am)
Re: Free memory never fully used, swapping, Simon Kirby, (Tue Nov 30, 2:13 am)
Re: Free memory never fully used, swapping, Mel Gorman, (Tue Nov 30, 3:41 am)
Re: Free memory never fully used, swapping, KOSAKI Motohiro, (Tue Nov 30, 4:19 am)
Re: Free memory never fully used, swapping, Christoph Lameter, (Tue Nov 30, 12:10 pm)
Re: Free memory never fully used, swapping, Christoph Lameter, (Tue Nov 30, 12:13 pm)
Re: Free memory never fully used, swapping, KOSAKI Motohiro, (Wed Dec 1, 3:17 am)
Re: Free memory never fully used, swapping, Christoph Lameter, (Wed Dec 1, 8:29 am)
Re: Free memory never fully used, swapping, KOSAKI Motohiro, (Wed Dec 1, 7:44 pm)
Re: Free memory never fully used, swapping, Christoph Lameter, (Thu Dec 2, 7:39 am)