From: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
To: David Rientjes <rientjes@google.com>
Cc: kosaki.motohiro@jp.fujitsu.com,
Andrea Arcangeli <aarcange@redhat.com>,
KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>,
linux-mm@kvack.org, linux-kernel@vger.kernel.org,
Andrew Morton <akpm@linux-foundation.org>,
Hugh Dickins <hugh.dickins@tiscali.co.uk>,
vedran.furac@gmail.com
Subject: Re: [PATCH] oom_kill: use rss value instead of vm size for badness
Date: Tue, 1 Dec 2009 13:43:34 +0900 (JST) [thread overview]
Message-ID: <20091201131509.5C19.A69D9226@jp.fujitsu.com> (raw)
In-Reply-To: <alpine.DEB.2.00.0911301502160.12038@chino.kir.corp.google.com>
> On Fri, 27 Nov 2009, Andrea Arcangeli wrote:
>
> > Ok I can see the fact by being dynamic and less predictable worries
> > you. The "second to last" tasks especially are going to be less
> > predictable, but the memory hog would normally end up accounting for
> > most of the memory and this should increase the badness delta between
> > the offending tasks (or tasks) and the innocent stuff, so making it
> > more reliable. The innocent stuff should be more and more paged out
> > from ram. So I tend to think it'll be much less likely to kill an
> > innocent task this way (as demonstrated in practice by your
> > measurement too), but it's true there's no guarantee it'll always do
> > the right thing, because it's a heuristic anyway, but even total_vm
> > doesn't provide guarantee unless your workload is stationary and your
> > badness scores are fixed and no virtual memory is ever allocated by
> > any task in the system and no new task are spawned.
> >
>
> The purpose of /proc/pid/oom_adj is not always to polarize the heuristic
> for the task it represents, it allows userspace to define when a task is
> rogue. Working with total_vm as a baseline, it is simple to use the
> interface to tune the heuristic to prefer a certain task over another when
> its memory consumption goes beyond what is expected. With this interface,
> I can easily define when an application should be oom killed because it is
> using far more memory than expected. I can also disable oom killing
> completely for it, if necessary. Unless you have a consistent baseline
> for all tasks, the adjustment wouldn't contextually make any sense. Using
> rss does not allow users to statically define when a task is rogue and is
> dependent on the current state of memory at the time of oom.
>
> I would support removing most of the other heuristics other than the
> baseline and the nodes intersection with mems_allowed to prefer tasks in
> the same cpuset, though, to make it easier to understand and tune.
I feel you talked about oom_adj doesn't fit your use case. probably you need
/proc/{pid}/oom_priority new knob. oom adjustment doesn't fit you.
you need job severity based oom killing order. severity doesn't depend on any
hueristic.
server administrator should know job severity on his system.
OOM heuristic should mainly consider desktop usage. because desktop user
doesn't change oom knob at all. and they doesn't know what deamon is important.
any userful heuristics have some dynamically aspect. we can't avoid it.
thought?
--
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/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2009-12-01 4:43 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-28 8:58 KAMEZAWA Hiroyuki
2009-10-28 9:15 ` David Rientjes
2009-10-28 11:04 ` KAMEZAWA Hiroyuki
2009-10-29 1:00 ` KAMEZAWA Hiroyuki
2009-10-29 2:31 ` Minchan Kim
2009-10-29 8:31 ` David Rientjes
2009-10-29 8:46 ` KAMEZAWA Hiroyuki
2009-10-29 9:01 ` David Rientjes
2009-10-29 9:16 ` KAMEZAWA Hiroyuki
2009-10-29 9:44 ` David Rientjes
2009-10-29 23:41 ` KAMEZAWA Hiroyuki
2009-11-01 13:29 ` KOSAKI Motohiro
2009-11-02 10:42 ` David Rientjes
2009-11-02 12:35 ` KOSAKI Motohiro
2009-11-02 19:55 ` Vedran Furač
2009-11-03 23:09 ` KOSAKI Motohiro
2009-11-07 19:16 ` Vedran Furač
2009-11-25 12:44 ` Andrea Arcangeli
2009-11-25 21:39 ` David Rientjes
2009-11-27 18:26 ` Andrea Arcangeli
2009-11-30 23:09 ` David Rientjes
2009-12-01 4:43 ` KOSAKI Motohiro [this message]
2009-12-01 22:20 ` David Rientjes
2009-12-02 0:35 ` KOSAKI Motohiro
2009-12-03 23:25 ` David Rientjes
2009-12-04 0:44 ` KAMEZAWA Hiroyuki
2009-11-26 0:10 ` Vedran Furač
2009-11-26 1:32 ` KAMEZAWA Hiroyuki
2009-11-27 1:56 ` Vedran Furač
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=20091201131509.5C19.A69D9226@jp.fujitsu.com \
--to=kosaki.motohiro@jp.fujitsu.com \
--cc=aarcange@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=hugh.dickins@tiscali.co.uk \
--cc=kamezawa.hiroyu@jp.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=rientjes@google.com \
--cc=vedran.furac@gmail.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