linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: "KAMEZAWA Hiroyuki" <kamezawa.hiroyu@jp.fujitsu.com>
To: balbir@linux.vnet.ibm.com
Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>,
	"linux-mm@kvack.org" <linux-mm@kvack.org>,
	"nishimura@mxp.nes.nec.co.jp" <nishimura@mxp.nes.nec.co.jp>,
	"lizf@cn.fujitsu.com" <lizf@cn.fujitsu.com>,
	"menage@google.com" <menage@google.com>,
	"kosaki.motohiro@jp.fujitsu.com" <kosaki.motohiro@jp.fujitsu.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [RFC][PATCH 4/6] Flat hierarchical reclaim by ID
Date: Tue, 9 Dec 2008 23:28:32 +0900 (JST)	[thread overview]
Message-ID: <3526.10.75.179.61.1228832912.squirrel@webmail-b.css.fujitsu.com> (raw)
In-Reply-To: <20081209122731.GB4174@balbir.in.ibm.com>

Balbir Singh said:
> * KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> [2008-12-09
> 20:09:15]:
>
>>
>> From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
>>
>> Implement hierarchy reclaim by cgroup_id.
>>
>> What changes:
>> 	- Page reclaim is not done by tree-walk algorithm
>> 	- mem_cgroup->last_schan_child is changed to be ID, not pointer.
>> 	- no cgroup_lock, done under RCU.
>> 	- scanning order is just defined by ID's order.
>> 	  (Scan by round-robin logic.)
>>
>> Changelog: v3 -> v4
>> 	- adjusted to changes in base kernel.
>> 	- is_acnestor() is moved to other patch.
>>
>> Changelog: v2 -> v3
>> 	- fixed use_hierarchy==0 case
>>
>> Changelog: v1 -> v2
>> 	- make use of css_tryget();
>> 	- count # of loops rather than remembering position.
>>
>> Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujisu.com>
>
> I have not yet run the patch, but the heuristics seem a lot like
> magic. I am not against scanning by order, but is order the right way
> to scan groups?
My consideration is
  - Both of current your implementation and this round robin is just
    an example. I never think some kind of search algorighm detemined by
    shape of tree is the best way.
  - No one knows what order is the best, now. We have to find it.
  - The best order will be determined by some kind of calculation rather
    than shape of tree and must pass by tons of tests.
    This needs much amount of time and patient work. VM management is not
    so easy thing.
    I think your soft-limit idea can be easily merged onto this patch set.

> Does this order reflect their position in the hierarchy?
  No. just scan IDs from last scannned one in RR.
  BTW, can you show what an algorithm works well in following case ?
  ex)
    groupA/   limit=1G     usage=300M
          01/ limit=600M   usage=600M
          02/ limit=700M   usage=70M
          03/ limit=100M   usage=30M
   Which one should be shrinked at first and why ?
   1) when group_A hit limits.
   2) when group_A/01 hit limits.
   3) when group_A/02 hit limits.
   I can't now.

   This patch itself uses round-robin and have no special order.
   I think implenting good algorithm under this needs some amount of time.

> Shouldn't id's belong to cgroups instead of just memory controller?
If Paul rejects, I'll move this to memcg. But bio-cgroup people also use
ID and, in this summer, I posted swap-cgroup-ID patch and asked to
implement IDs under cgroup rather than subsys. (asked by Paul or you.)

>From implementation, hierarchy code management at el. should go into
cgroup.c and it gives us clear view rather than implemented under memcg.

-Kame
> I would push back ids to cgroups infrastructure.
>


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

  reply	other threads:[~2008-12-09 14:28 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-12-09 11:02 [RFC][PATCH 0/6] cgroup id and mix fixes (2008/12/09) KAMEZAWA Hiroyuki
2008-12-09 11:04 ` [RFC][PATCH 1/6] memcg: Documentation for internal implementation KAMEZAWA Hiroyuki
2008-12-10  0:27   ` KAMEZAWA Hiroyuki
2008-12-10  1:02     ` Li Zefan
2008-12-10  1:07       ` KAMEZAWA Hiroyuki
2008-12-09 11:06 ` [RFC][PATCH 1/6] memcg: fix pre_destory handler KAMEZAWA Hiroyuki
2008-12-10  2:08   ` KAMEZAWA Hiroyuki
2008-12-10  2:19   ` Li Zefan
2008-12-10  2:23     ` KAMEZAWA Hiroyuki
2008-12-10  2:28   ` Daisuke Nishimura
2008-12-10  2:58     ` KAMEZAWA Hiroyuki
2008-12-10  3:03       ` Daisuke Nishimura
2008-12-10  4:17         ` KAMEZAWA Hiroyuki
2008-12-10 10:40   ` Paul Menage
2008-12-10 11:29     ` KAMEZAWA Hiroyuki
2008-12-10 13:25       ` Balbir Singh
2008-12-10 13:47         ` Daisuke Nishimura
2008-12-10 18:26           ` Paul Menage
2008-12-10 18:25         ` Paul Menage
2008-12-10 18:35       ` Paul Menage
2008-12-10 19:00         ` Paul Menage
2008-12-11  0:21           ` KAMEZAWA Hiroyuki
2008-12-11  0:24             ` Paul Menage
2008-12-11  1:06               ` KAMEZAWA Hiroyuki
2008-12-11 12:43               ` KAMEZAWA Hiroyuki
2008-12-11  0:25         ` KAMEZAWA Hiroyuki
2008-12-11  0:28           ` Paul Menage
2008-12-11  1:09             ` KAMEZAWA Hiroyuki
2008-12-09 11:08 ` [RFC][PATCH 2/6] cgroup id KAMEZAWA Hiroyuki
2008-12-09 11:09 ` [RFC][PATCH 4/6] Flat hierarchical reclaim by ID KAMEZAWA Hiroyuki
2008-12-09 12:27   ` Balbir Singh
2008-12-09 14:28     ` KAMEZAWA Hiroyuki [this message]
2008-12-09 15:46       ` Balbir Singh
2008-12-09 16:34         ` KAMEZAWA Hiroyuki
2008-12-10  2:49           ` Balbir Singh
2008-12-10  3:03             ` KAMEZAWA Hiroyuki
2008-12-09 11:10 ` [RFC][PATCH 5/6] fix inactive_ratio under hierarchy KAMEZAWA Hiroyuki
2008-12-11  3:14   ` KOSAKI Motohiro
2008-12-11  3:19     ` KAMEZAWA Hiroyuki
2008-12-09 11:12 ` [RFC][PATCH 6/6] fix oom " 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=3526.10.75.179.61.1228832912.squirrel@webmail-b.css.fujitsu.com \
    --to=kamezawa.hiroyu@jp.fujitsu.com \
    --cc=balbir@linux.vnet.ibm.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=nishimura@mxp.nes.nec.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