From: Balbir Singh <balbir@linux.vnet.ibm.com>
To: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: linux-mm@kvack.org, Sudhir Kumar <skumar@linux.vnet.ibm.com>,
YAMAMOTO Takashi <yamamoto@valinux.co.jp>,
Bharata B Rao <bharata@in.ibm.com>,
Paul Menage <menage@google.com>,
lizf@cn.fujitsu.com, linux-kernel@vger.kernel.org,
KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>,
David Rientjes <rientjes@google.com>,
Pavel Emelianov <xemul@openvz.org>,
Dhaval Giani <dhaval@linux.vnet.ibm.com>,
Rik van Riel <riel@redhat.com>,
Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [PATCH 0/4] Memory controller soft limit patches (v3)
Date: Tue, 3 Mar 2009 18:44:10 +0530 [thread overview]
Message-ID: <20090303131410.GT11421@balbir.in.ibm.com> (raw)
In-Reply-To: <52c02febf1e87a4f0a6e81124e00876a.squirrel@webmail-b.css.fujitsu.com>
* KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> [2009-03-03 20:50:56]:
> Balbir Singh wrote:
> > * KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> [2009-03-03
> > 08:59:14]:
> >> But, on NUMA, because memcg just checks "usage" and doesn't check
> >> "usage-per-node", there can be memory shortage and this kind of
> >> soft-limit
> >> sounds attractive for me.
> >>
> >
> >
> > Could you please elaborate further on this?
> >
> Try to explain by artificial example..
> .
> Assume a system with 4 nodes, and 1G of memory per node.
> ==
> Node0 -- 1G
> Node1 -- 1G
> Node2 -- 1G
> Node3 -- 1G
> ==
> And assume there are 3 memory cgroups of following hard-limit.
> ==
> GroupA -- 1G
> GroupB -- 0.6G
> GroupC -- 0.6G
> ==
> If the machine is not-NUMA and 4G SMP, we expect 1.8G of free memory and
> we can assume "global memory shortage" is a rare event.
>
> But on NUMA, memory usage can be following.
> ==
> GroupA -- 950M of usage
> GrouoB -- 550M of usage
> GroupC -- 550M of usage
> and
> Node0 -- usage=1G
> Node1 -- usage=1G
> Node2 -- usage=50M
> Node2 -- Usage=0
> ==
> In this case, kswapd will work on Node0, and Node1.
> Softlimit will have chance to work. If the user declares GroupA's softlimit
> is 800M, GroupA will be victim in this case.
>
Yes, GroupA is the victim, but if GroupA has not allocated from a
particular node, we can ensure that we don't reclaim from that node
even while doing soft limit reclaim.
> But we have to admit this is hard-to-use scheduling paramter. Almost all
> administrator will not be able to set proper value.
> A useful case I can think of is creating some "victim" group and guard
> other groups from global memory reclaim. I think I need some study about
> how-to-use softlimit. But we'll need this kind of paramater,anyway and
> I don't have onjection to add this kind of scheduling parameter.
> But implementation should be simple at this stage and we should
> find best scheduling algorithm under use-case finally...
>
Yes and it should be correct and reliable and not based on heuristics
that are hard to prove as correct or even acceptable. Let me work on
the comments so far and refresh the patches.
--
Balbir
--
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-03-03 13:14 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-03-01 6:29 Balbir Singh
2009-03-01 6:30 ` [PATCH 1/4] Memory controller soft limit documentation (v3) Balbir Singh
2009-03-01 6:30 ` [PATCH 2/4] Memory controller soft limit interface (v3) Balbir Singh
2009-03-02 2:03 ` KAMEZAWA Hiroyuki
2009-03-02 4:46 ` Balbir Singh
2009-03-02 5:35 ` KAMEZAWA Hiroyuki
2009-03-02 6:07 ` Balbir Singh
2009-03-02 6:19 ` KAMEZAWA Hiroyuki
2009-03-02 6:29 ` Balbir Singh
2009-03-01 6:30 ` [PATCH 3/4] Memory controller soft limit organize cgroups (v3) Balbir Singh
2009-03-01 6:30 ` [PATCH 4/4] Memory controller soft limit reclaim on contention (v3) Balbir Singh
2009-03-02 3:08 ` KOSAKI Motohiro
2009-03-02 4:44 ` Balbir Singh
2009-03-03 2:43 ` KOSAKI Motohiro
2009-03-03 11:17 ` Balbir Singh
2009-03-04 0:07 ` KOSAKI Motohiro
2009-03-02 0:24 ` [PATCH 0/4] Memory controller soft limit patches (v3) KAMEZAWA Hiroyuki
2009-03-02 4:40 ` Balbir Singh
2009-03-02 5:32 ` KAMEZAWA Hiroyuki
2009-03-02 6:05 ` Balbir Singh
2009-03-02 6:18 ` KAMEZAWA Hiroyuki
2009-03-02 17:52 ` Balbir Singh
2009-03-03 0:03 ` KAMEZAWA Hiroyuki
2009-03-03 11:23 ` Balbir Singh
2009-03-02 6:21 ` KAMEZAWA Hiroyuki
2009-03-02 6:36 ` Balbir Singh
2009-03-02 7:06 ` KAMEZAWA Hiroyuki
2009-03-02 7:17 ` KAMEZAWA Hiroyuki
2009-03-02 12:42 ` Balbir Singh
2009-03-02 14:04 ` KAMEZAWA Hiroyuki
2009-03-02 17:41 ` Balbir Singh
2009-03-02 23:59 ` KAMEZAWA Hiroyuki
2009-03-03 11:12 ` Balbir Singh
2009-03-03 11:50 ` KAMEZAWA Hiroyuki
2009-03-03 13:14 ` Balbir Singh [this message]
2009-03-05 9:04 ` KAMEZAWA Hiroyuki
2009-03-05 9:13 ` KAMEZAWA Hiroyuki
2009-03-05 15:26 ` Balbir Singh
2009-03-05 23:53 ` KAMEZAWA Hiroyuki
2009-03-06 3:23 ` KAMEZAWA Hiroyuki
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=20090303131410.GT11421@balbir.in.ibm.com \
--to=balbir@linux.vnet.ibm.com \
--cc=akpm@linux-foundation.org \
--cc=bharata@in.ibm.com \
--cc=dhaval@linux.vnet.ibm.com \
--cc=kamezawa.hiroyu@jp.fujitsu.com \
--cc=kosaki.motohiro@jp.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=lizf@cn.fujitsu.com \
--cc=menage@google.com \
--cc=riel@redhat.com \
--cc=rientjes@google.com \
--cc=skumar@linux.vnet.ibm.com \
--cc=xemul@openvz.org \
--cc=yamamoto@valinux.co.jp \
/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