linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: David Rientjes <rientjes@google.com>
To: Rik van Riel <riel@redhat.com>
Cc: Satoru Moriya <satoru.moriya@hds.com>,
	Randy Dunlap <rdunlap@xenotime.net>,
	Satoru Moriya <smoriya@redhat.com>,
	linux-kernel@vger.kernel.org, linux-mm@kvack.org,
	"lwoodman@redhat.com" <lwoodman@redhat.com>,
	Seiji Aguchi <saguchi@redhat.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Hugh Dickins <hughd@google.com>,
	"hannes@cmpxchg.org" <hannes@cmpxchg.org>
Subject: Re: [PATCH -v2 -mm] add extra free kbytes tunable
Date: Wed, 12 Oct 2011 22:22:33 -0700 (PDT)	[thread overview]
Message-ID: <alpine.DEB.2.00.1110122210030.7572@chino.kir.corp.google.com> (raw)
In-Reply-To: <4E966564.5030902@redhat.com>

On Thu, 13 Oct 2011, Rik van Riel wrote:

> > I suggested a patch from BFS that would raise kswapd to the same priority
> > of the task that triggered it (not completely up to rt, but the highest
> > possible in that case) and I'm waiting to hear if that helps for Satoru's
> > test case before looking at alternatives.  We could also extend the patch
> > to raise the priority of an already running kswapd if a higher priority
> > task calls into the page allocator's slowpath.
> 
> This has the distinct benefit of making kswapd most active right
> at the same time the application is most active, which returns
> us to your first objection to the extra free kbytes patch (apps
> will suffer from kswapd cpu use).
> 

Not necessarily, it only raises the priority of kswapd to be the same as 
the application, although it'll never raise it to be realtime, that kicks 
it in the page allocator's slowpath.  If the application has a nice level 
of 0, it's a no-op.  That's very different from extra_free_kbytes which 
causes kswapd to do extra work regardless of the priority of the 
application that is allocating memory.  Raising the priority of kswapd for 
rt threads makes sense if they are going to deplete all memory, it makes 
no sense to allow a rt thread to allocate tons of memory and not even give 
kswapd a chance to compete.

> Furthermore, I am not sure that giving kswapd more CPU time is
> going to help, because kswapd could be stuck on some lock, held
> by a lower priority (or sleeping) context.
> 
> I agree that the BFS patch would be worth a try, and would be
> very pleasantly surprised if it worked, but I am not very
> optimistic about it...
> 

It may require a combination of Con's patch, increasing the priority of 
kswapd if a higher priority task kicks it in the page allocator, and an 
extra bonus on top of the high watermark if it was triggered by a 
rt-thread -- similar to ALLOC_HARDER but instead reclaiming to 
(high * 1.25).

If we're going to go with extra_free_kbytes, then I'd like to see the test 
case posted with a mathematical formula to show me what I should tune it 
to be depending on my machine's memory capacity and amount of free RAM 
when started (and I can use mem= to test it for various capacities).  For 
this to be merged, there should be a clear expression that shows what the 
ideal setting of the tunable should be rather than asking for trial-and-
error to see what works and what doesn't.  If such an expression doesn't 
exist, then it's clear that the necessary setting will vary significantly 
as the implementation changes from kernel to kernel.

--
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>

  reply	other threads:[~2011-10-13  5:22 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-01 14:52 [PATCH " Rik van Riel
2011-09-01 17:06 ` Randy Dunlap
2011-09-01 19:26   ` [PATCH -v2 " Rik van Riel
2011-09-01 21:58     ` Andrew Morton
2011-09-01 22:08       ` David Rientjes
2011-09-01 22:16         ` Andrew Morton
2011-09-02 16:31       ` Satoru Moriya
2011-10-13  7:33         ` Minchan Kim
2011-10-13  8:09           ` KAMEZAWA Hiroyuki
     [not found]       ` <E1FA588BC672D846BDBB452FCA1E308C2389B4@USINDEVS02.corp.hds.com>
2011-09-15  3:33         ` Satoru Moriya
2011-09-01 22:09     ` Andrew Morton
2011-09-02 16:26       ` [PATCH -mm] fixes & cleanups for "add extra free kbytes tunable" Rik van Riel
2011-09-30 21:43     ` [PATCH -v2 -mm] add extra free kbytes tunable Johannes Weiner
2011-10-08  3:08     ` David Rientjes
2011-10-10 22:37       ` Andrew Morton
2011-10-11 19:32         ` Satoru Moriya
2011-10-11 19:54           ` Andrew Morton
2011-10-11 20:23             ` Satoru Moriya
2011-10-11 20:54               ` Andrew Morton
2011-10-12 13:09                 ` Rik van Riel
2011-10-12 19:20                   ` Andrew Morton
2011-10-12 19:58                     ` Rik van Riel
2011-10-12 20:26                       ` David Rientjes
2011-10-21 23:48                       ` Satoru Moriya
2011-10-23 21:22                         ` David Rientjes
2011-10-25  2:04                           ` Satoru Moriya
2011-10-25 21:50                             ` David Rientjes
2011-10-26 18:59                               ` Satoru Moriya
2011-10-12 21:08                 ` Satoru Moriya
2011-10-12 22:41                   ` David Rientjes
2011-10-12 23:52                     ` Satoru Moriya
2011-10-13  0:01                       ` David Rientjes
2011-10-13  5:35                         ` KAMEZAWA Hiroyuki
2011-10-13 20:55                           ` David Rientjes
2011-10-14 22:16                             ` Satoru Moriya
2011-10-14 22:46                               ` David Rientjes
2011-10-14  5:32                           ` Satoru Moriya
2011-10-14  5:06                         ` Satoru Moriya
2011-10-11 23:22           ` David Rientjes
2011-10-13 16:54             ` Satoru Moriya
2011-10-13 20:48               ` David Rientjes
2011-10-13 21:11                 ` Rik van Riel
2011-10-13 22:02                   ` David Rientjes
2011-10-11 19:20       ` Satoru Moriya
2011-10-11 21:04         ` David Rientjes
2011-10-12 13:13           ` Rik van Riel
2011-10-12 20:21             ` David Rientjes
2011-10-13  4:13               ` Rik van Riel
2011-10-13  5:22                 ` David Rientjes [this message]
2011-10-22  0:11                   ` Satoru Moriya
2011-09-09 23:01 Satoru Moriya

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.DEB.2.00.1110122210030.7572@chino.kir.corp.google.com \
    --to=rientjes@google.com \
    --cc=akpm@linux-foundation.org \
    --cc=hannes@cmpxchg.org \
    --cc=hughd@google.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=lwoodman@redhat.com \
    --cc=rdunlap@xenotime.net \
    --cc=riel@redhat.com \
    --cc=saguchi@redhat.com \
    --cc=satoru.moriya@hds.com \
    --cc=smoriya@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox