From: Johannes Weiner <jweiner@redhat.com> To: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> Cc: Andrew Morton <akpm@linux-foundation.org>, Michal Hocko <mhocko@suse.cz>, "Kirill A. Shutemov" <kirill@shutemov.name>, Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>, Balbir Singh <bsingharora@gmail.com>, Ying Han <yinghan@google.com>, Greg Thelen <gthelen@google.com>, Michel Lespinasse <walken@google.com>, Rik van Riel <riel@redhat.com>, Minchan Kim <minchan.kim@gmail.com>, Christoph Hellwig <hch@infradead.org>, Hugh Dickins <hughd@google.com>, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [patch 00/10] memcg naturalization -rc4 Date: Fri, 30 Sep 2011 11:32:31 +0200 [thread overview] Message-ID: <20110930093231.GE30857@redhat.com> (raw) In-Reply-To: <20110930170510.4695b8f0.kamezawa.hiroyu@jp.fujitsu.com> On Fri, Sep 30, 2011 at 05:05:10PM +0900, KAMEZAWA Hiroyuki wrote: > On Thu, 29 Sep 2011 23:00:54 +0200 > Johannes Weiner <jweiner@redhat.com> wrote: > > > Hi, > > > > this is the fourth revision of the memory cgroup naturalization > > series. > > > > The changes from v3 have mostly been documentation, changelog, and > > naming fixes based on review feedback: > > > > o drop conversion of no longer existing zone-wide unevictable > > page rescue scanner > > o fix return value of mem_cgroup_hierarchical_reclaim() in > > limit-shrinking mode (Michal) > > o rename @remember to @reclaim in mem_cgroup_iter() > > o convert vm_swappiness to global_reclaim() in the > > correct patch (Michal) > > o rename > > struct mem_cgroup_iter_state -> struct mem_cgroup_reclaim_iter > > and > > struct mem_cgroup_iter -> struct mem_cgroup_reclaim_cookie > > (Michal) > > o added/amended comments and changelogs based on feedback (Michal, Kame) > > > > Thanks for the review and feedback, guys, it's much appreciated! > > > > Thank you for your work. Now, I'm ok this series to be tested in -mm. > Ack. to all. Thanks! > Do you have any plan, concerns ? I would really like to get them into 3.2. While it's quite intrusive, I stress-tested various scenarios for quite some time - tests that revealed more bugs in the existing memcg code than in my changes - so I don't expect too big surprises. AFAICS, Google uses these patches internally already and their bug reports early on also helped iron out the most obvious problems. What I am concerned about is the scalability on setups with thousands of tiny memcgs that go into global reclaim, as this would try to scan pages from all existing memcgs. There is a mitigating factor in that concurrent reclaimers divide the memcgs to scan among themselves (the shared mem_cgroup_reclaim_iter), and with hundreds or thousands of memcgs, I expect several threads to go into reclaim upon global memory pressure at the same time in the common case. I don't have the means to test this and I also don't know if such setups exist or are within the realm of sanity that we would like to support, anyway. If this shows up, I think the fix would be as easy as bailing out early from the hierarchy walk, but I would like to cross that bridge when we come to it. Other than that, I see no reason to hold it off. Traditional reclaim without memcgs except root_mem_cgroup - what most people care about - is mostly unaffected. There is a real interest in the series, and maintaining it out-of-tree is a major pain and quite error prone. What do you think? Thanks, Hannes
WARNING: multiple messages have this Message-ID (diff)
From: Johannes Weiner <jweiner@redhat.com> To: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> Cc: Andrew Morton <akpm@linux-foundation.org>, Michal Hocko <mhocko@suse.cz>, "Kirill A. Shutemov" <kirill@shutemov.name>, Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>, Balbir Singh <bsingharora@gmail.com>, Ying Han <yinghan@google.com>, Greg Thelen <gthelen@google.com>, Michel Lespinasse <walken@google.com>, Rik van Riel <riel@redhat.com>, Minchan Kim <minchan.kim@gmail.com>, Christoph Hellwig <hch@infradead.org>, Hugh Dickins <hughd@google.com>, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [patch 00/10] memcg naturalization -rc4 Date: Fri, 30 Sep 2011 11:32:31 +0200 [thread overview] Message-ID: <20110930093231.GE30857@redhat.com> (raw) In-Reply-To: <20110930170510.4695b8f0.kamezawa.hiroyu@jp.fujitsu.com> On Fri, Sep 30, 2011 at 05:05:10PM +0900, KAMEZAWA Hiroyuki wrote: > On Thu, 29 Sep 2011 23:00:54 +0200 > Johannes Weiner <jweiner@redhat.com> wrote: > > > Hi, > > > > this is the fourth revision of the memory cgroup naturalization > > series. > > > > The changes from v3 have mostly been documentation, changelog, and > > naming fixes based on review feedback: > > > > o drop conversion of no longer existing zone-wide unevictable > > page rescue scanner > > o fix return value of mem_cgroup_hierarchical_reclaim() in > > limit-shrinking mode (Michal) > > o rename @remember to @reclaim in mem_cgroup_iter() > > o convert vm_swappiness to global_reclaim() in the > > correct patch (Michal) > > o rename > > struct mem_cgroup_iter_state -> struct mem_cgroup_reclaim_iter > > and > > struct mem_cgroup_iter -> struct mem_cgroup_reclaim_cookie > > (Michal) > > o added/amended comments and changelogs based on feedback (Michal, Kame) > > > > Thanks for the review and feedback, guys, it's much appreciated! > > > > Thank you for your work. Now, I'm ok this series to be tested in -mm. > Ack. to all. Thanks! > Do you have any plan, concerns ? I would really like to get them into 3.2. While it's quite intrusive, I stress-tested various scenarios for quite some time - tests that revealed more bugs in the existing memcg code than in my changes - so I don't expect too big surprises. AFAICS, Google uses these patches internally already and their bug reports early on also helped iron out the most obvious problems. What I am concerned about is the scalability on setups with thousands of tiny memcgs that go into global reclaim, as this would try to scan pages from all existing memcgs. There is a mitigating factor in that concurrent reclaimers divide the memcgs to scan among themselves (the shared mem_cgroup_reclaim_iter), and with hundreds or thousands of memcgs, I expect several threads to go into reclaim upon global memory pressure at the same time in the common case. I don't have the means to test this and I also don't know if such setups exist or are within the realm of sanity that we would like to support, anyway. If this shows up, I think the fix would be as easy as bailing out early from the hierarchy walk, but I would like to cross that bridge when we come to it. Other than that, I see no reason to hold it off. Traditional reclaim without memcgs except root_mem_cgroup - what most people care about - is mostly unaffected. There is a real interest in the series, and maintaining it out-of-tree is a major pain and quite error prone. What do you think? Thanks, Hannes -- 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>
next prev parent reply other threads:[~2011-09-30 9:33 UTC|newest] Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top 2011-09-29 21:00 [patch 00/10] memcg naturalization -rc4 Johannes Weiner 2011-09-29 21:00 ` Johannes Weiner 2011-09-29 21:00 ` [patch 01/10] mm: memcg: consolidate hierarchy iteration primitives Johannes Weiner 2011-09-29 21:00 ` Johannes Weiner 2011-09-29 21:00 ` [patch 02/10] mm: vmscan: distinguish global reclaim from global LRU scanning Johannes Weiner 2011-09-29 21:00 ` Johannes Weiner 2011-09-29 21:00 ` [patch 03/10] mm: vmscan: distinguish between memcg triggering reclaim and memcg being scanned Johannes Weiner 2011-09-29 21:00 ` Johannes Weiner 2011-09-29 21:00 ` [patch 04/10] mm: memcg: per-priority per-zone hierarchy scan generations Johannes Weiner 2011-09-29 21:00 ` Johannes Weiner 2011-09-30 9:25 ` Michal Hocko 2011-09-30 9:25 ` Michal Hocko 2011-09-29 21:00 ` [patch 05/10] mm: move memcg hierarchy reclaim to generic reclaim code Johannes Weiner 2011-09-29 21:00 ` Johannes Weiner 2011-09-29 21:01 ` [patch 06/10] mm: memcg: remove optimization of keeping the root_mem_cgroup LRU lists empty Johannes Weiner 2011-09-29 21:01 ` Johannes Weiner 2011-09-29 21:01 ` [patch 07/10] mm: vmscan: convert global reclaim to per-memcg LRU lists Johannes Weiner 2011-09-29 21:01 ` Johannes Weiner 2011-09-29 21:01 ` [patch 08/10] mm: collect LRU list heads into struct lruvec Johannes Weiner 2011-09-29 21:01 ` Johannes Weiner 2011-09-29 21:01 ` [patch 09/10] mm: make per-memcg LRU lists exclusive Johannes Weiner 2011-09-29 21:01 ` Johannes Weiner 2011-09-29 21:01 ` [patch 10/10] mm: memcg: remove unused node/section info from pc->flags Johannes Weiner 2011-09-29 21:01 ` Johannes Weiner 2011-09-30 8:05 ` [patch 00/10] memcg naturalization -rc4 KAMEZAWA Hiroyuki 2011-09-30 8:05 ` KAMEZAWA Hiroyuki 2011-09-30 9:32 ` Johannes Weiner [this message] 2011-09-30 9:32 ` Johannes Weiner 2011-10-03 10:04 ` KAMEZAWA Hiroyuki 2011-10-03 10:04 ` KAMEZAWA Hiroyuki 2011-09-30 9:31 ` Michal Hocko 2011-09-30 9:31 ` Michal Hocko 2011-10-03 23:11 ` Andrew Morton 2011-10-03 23:11 ` Andrew Morton 2011-10-04 7:47 ` Johannes Weiner 2011-10-04 7:47 ` Johannes Weiner
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=20110930093231.GE30857@redhat.com \ --to=jweiner@redhat.com \ --cc=akpm@linux-foundation.org \ --cc=bsingharora@gmail.com \ --cc=gthelen@google.com \ --cc=hch@infradead.org \ --cc=hughd@google.com \ --cc=kamezawa.hiroyu@jp.fujitsu.com \ --cc=kirill@shutemov.name \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mm@kvack.org \ --cc=mhocko@suse.cz \ --cc=minchan.kim@gmail.com \ --cc=nishimura@mxp.nes.nec.co.jp \ --cc=riel@redhat.com \ --cc=walken@google.com \ --cc=yinghan@google.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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.