From: Vivek Goyal <vgoyal-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: Peter Zijlstra <peterz-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
Cc: Frederic Weisbecker
<fweisbec-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org,
Kay Sievers <kay.sievers-tD+1rO4QERM@public.gmane.org>,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Christoph Hellwig <hch-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>,
Lennart Poettering
<lennart-mdGvqq1h2p+GdvJs77BJ7Q@public.gmane.org>,
Tejun Heo <tj-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Andrew Morton
<akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
Subject: Re: [RFD] cgroup: about multiple hierarchies
Date: Tue, 28 Feb 2012 17:09:32 -0500 [thread overview]
Message-ID: <20120228220932.GK9920@redhat.com> (raw)
In-Reply-To: <1330466039.11248.103.camel@twins>
On Tue, Feb 28, 2012 at 10:53:59PM +0100, Peter Zijlstra wrote:
> On Tue, 2012-02-28 at 16:35 -0500, Vivek Goyal wrote:
> > Yes this is how scheduler does to handle hierarchy. Treat task and group
> > at same level.
>
> ...
>
> > Whether it is a good thing or bad thing, I don't know.
>
> That's IMO what the cgroupfs interface provides for, if you do anything
> different there's this shadow group that contains the tasks for which
> you then have to provide extra parameter control.
>
> Furthermore, by treating tasks and groups at the same level you can
> create the extra group, but you can't do the reverse. So its the more
> versatile solution as well.
Agreed that it is more versatile. And one can move all the tasks to a
new group to achieve what a shadow group will do.
The only thing is what is a good default. If we are thinking of dividing
resources in terms of % and writing a user space tool, then in default
model we just don't know what's the %. May be it is dynamically varying
% and should be shown accordingly.
Or if idea of minimum % proportional bandwidth is more natural, then
we shall have to change userspace and things like systemd to not run
any task in /. Then a user space tool can go through cgroup hierarchy
and calculate minimum % share of a group and display it.
>
> > I think previous
> > design was allocating a group for every user. I guess, in that case we
> > will have fixed % share of each user (until and unless users are created/
> > removed).
>
> Not even, it depended on if the user had anything runnable or not. It
> was very much like the current cgroup stuff if you create a cgroup for
> each user and stick the tasks in.
>
> The cpu-cgroup stuff is purely runnable based, so every wakeup/sleep
> changes the entire weight distribution, yay! :-)
:-). That's fine. If a group is not using its bandwidth because there is
no runnable task, then other groups get more cpu. I thought that's the
proportional definition.
Thanks
Vivek
WARNING: multiple messages have this Message-ID (diff)
From: Vivek Goyal <vgoyal@redhat.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Tejun Heo <tj@kernel.org>, Li Zefan <lizf@cn.fujitsu.com>,
containers@lists.linux-foundation.org, cgroups@vger.kernel.org,
Andrew Morton <akpm@linux-foundation.org>,
Kay Sievers <kay.sievers@vrfy.org>,
Lennart Poettering <lennart@poettering.net>,
Frederic Weisbecker <fweisbec@gmail.com>,
linux-kernel@vger.kernel.org,
Christoph Hellwig <hch@infradead.org>
Subject: Re: [RFD] cgroup: about multiple hierarchies
Date: Tue, 28 Feb 2012 17:09:32 -0500 [thread overview]
Message-ID: <20120228220932.GK9920@redhat.com> (raw)
In-Reply-To: <1330466039.11248.103.camel@twins>
On Tue, Feb 28, 2012 at 10:53:59PM +0100, Peter Zijlstra wrote:
> On Tue, 2012-02-28 at 16:35 -0500, Vivek Goyal wrote:
> > Yes this is how scheduler does to handle hierarchy. Treat task and group
> > at same level.
>
> ...
>
> > Whether it is a good thing or bad thing, I don't know.
>
> That's IMO what the cgroupfs interface provides for, if you do anything
> different there's this shadow group that contains the tasks for which
> you then have to provide extra parameter control.
>
> Furthermore, by treating tasks and groups at the same level you can
> create the extra group, but you can't do the reverse. So its the more
> versatile solution as well.
Agreed that it is more versatile. And one can move all the tasks to a
new group to achieve what a shadow group will do.
The only thing is what is a good default. If we are thinking of dividing
resources in terms of % and writing a user space tool, then in default
model we just don't know what's the %. May be it is dynamically varying
% and should be shown accordingly.
Or if idea of minimum % proportional bandwidth is more natural, then
we shall have to change userspace and things like systemd to not run
any task in /. Then a user space tool can go through cgroup hierarchy
and calculate minimum % share of a group and display it.
>
> > I think previous
> > design was allocating a group for every user. I guess, in that case we
> > will have fixed % share of each user (until and unless users are created/
> > removed).
>
> Not even, it depended on if the user had anything runnable or not. It
> was very much like the current cgroup stuff if you create a cgroup for
> each user and stick the tasks in.
>
> The cpu-cgroup stuff is purely runnable based, so every wakeup/sleep
> changes the entire weight distribution, yay! :-)
:-). That's fine. If a group is not using its bandwidth because there is
no runnable task, then other groups get more cpu. I thought that's the
proportional definition.
Thanks
Vivek
next prev parent reply other threads:[~2012-02-28 22:09 UTC|newest]
Thread overview: 211+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-21 21:19 [RFD] cgroup: about multiple hierarchies Tejun Heo
2012-02-21 21:19 ` Tejun Heo
[not found] ` <20120221211938.GE12236-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2012-02-21 21:21 ` Tejun Heo
2012-02-21 21:21 ` Tejun Heo
2012-02-21 21:21 ` Tejun Heo
[not found] ` <20120221212106.GF12236-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2012-02-22 13:34 ` Glauber Costa
2012-02-22 13:34 ` Glauber Costa
[not found] ` <4F44EEE4.2000809-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2012-02-23 7:45 ` Serge E. Hallyn
2012-02-23 7:45 ` Serge E. Hallyn
[not found] ` <20120223074526.GA15835-7LNsyQBKDXoIagZqoN9o3w@public.gmane.org>
2012-02-23 17:29 ` Tejun Heo
2012-02-23 17:29 ` Tejun Heo
[not found] ` <20120223172915.GC22536-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2012-02-23 18:47 ` Serge Hallyn
2012-02-23 18:47 ` Serge Hallyn
2012-02-23 7:45 ` Serge E. Hallyn
2012-02-22 13:34 ` Glauber Costa
2012-02-26 4:59 ` Konstantin Khlebnikov
2012-02-26 4:59 ` Konstantin Khlebnikov
2012-02-26 4:59 ` Konstantin Khlebnikov
2012-02-22 13:30 ` Peter Zijlstra
2012-02-22 13:30 ` Peter Zijlstra
2012-02-22 13:37 ` Glauber Costa
2012-02-22 13:37 ` Glauber Costa
2012-02-22 13:37 ` Glauber Costa
2012-02-22 18:01 ` Tejun Heo
2012-02-22 18:01 ` Tejun Heo
2012-02-22 18:01 ` Tejun Heo
2012-02-23 7:39 ` Li Zefan
2012-02-23 7:39 ` Li Zefan
2012-02-23 7:39 ` Li Zefan
2012-02-22 13:30 ` Peter Zijlstra
2012-02-22 15:45 ` Frederic Weisbecker
2012-02-22 15:45 ` Frederic Weisbecker
[not found] ` <20120222154501.GA1693-oHC15RC7JGTpAmv0O++HtFaTQe2KTcn/@public.gmane.org>
2012-02-22 18:22 ` Tejun Heo
2012-02-22 18:22 ` Tejun Heo
2012-02-22 18:22 ` Tejun Heo
2012-02-27 17:46 ` Frederic Weisbecker
[not found] ` <20120222182207.GC32694-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2012-02-27 17:46 ` Frederic Weisbecker
2012-02-22 16:38 ` Vivek Goyal
2012-02-22 16:38 ` Vivek Goyal
2012-02-22 16:38 ` Vivek Goyal
[not found] ` <20120222163858.GB4128-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-02-22 16:57 ` Vivek Goyal
2012-02-22 16:57 ` Vivek Goyal
[not found] ` <20120222165714.GC4128-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-02-22 18:43 ` Tejun Heo
2012-02-22 18:43 ` Tejun Heo
2012-02-22 18:43 ` Tejun Heo
2012-02-23 9:41 ` Peter Zijlstra
2012-02-23 9:41 ` Peter Zijlstra
2012-02-23 14:13 ` Peter Zijlstra
2012-02-23 14:13 ` Peter Zijlstra
2012-03-01 17:19 ` Michal Schmidt
2012-03-01 17:19 ` Michal Schmidt
[not found] ` <4F4FAF89.3090706-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-03-01 18:03 ` Peter Zijlstra
2012-03-01 18:03 ` Peter Zijlstra
2012-03-02 11:08 ` Michal Schmidt
2012-03-02 11:08 ` Michal Schmidt
[not found] ` <4F50AA22.9080007-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-03-02 11:23 ` Peter Zijlstra
2012-03-02 11:23 ` Peter Zijlstra
2012-03-02 11:23 ` Peter Zijlstra
2012-03-02 11:28 ` Michal Schmidt
2012-03-02 11:28 ` Michal Schmidt
[not found] ` <4F50AEC3.5090807-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-03-02 11:34 ` Peter Zijlstra
2012-03-02 11:34 ` Peter Zijlstra
2012-03-01 20:26 ` Mike Galbraith
2012-03-01 20:26 ` Mike Galbraith
[not found] ` <1330633603.7414.49.camel-YqMYhexLQo31wTEvPJ5Q0F6hYfS7NtTn@public.gmane.org>
2012-03-01 21:02 ` Vivek Goyal
2012-03-01 21:02 ` Vivek Goyal
2012-03-01 21:02 ` Vivek Goyal
[not found] ` <20120301210213.GF13533-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-03-01 22:04 ` Mike Galbraith
2012-03-01 22:04 ` Mike Galbraith
2012-03-01 22:04 ` Mike Galbraith
[not found] ` <1330639448.7414.97.camel-YqMYhexLQo31wTEvPJ5Q0F6hYfS7NtTn@public.gmane.org>
2012-03-01 22:38 ` C Anthony Risinger
2012-03-01 22:38 ` C Anthony Risinger
2012-03-01 22:38 ` C Anthony Risinger
2012-03-02 10:51 ` Michal Schmidt
2012-03-02 10:51 ` Michal Schmidt
[not found] ` <4F50A63F.40306-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-03-02 11:52 ` Mike Galbraith
2012-03-02 11:52 ` Mike Galbraith
2012-03-02 11:52 ` Mike Galbraith
2012-03-05 12:43 ` Lennart Poettering
2012-03-05 12:43 ` Lennart Poettering
[not found] ` <20120305124310.GD10929-kS5D54t9nk0aINubkmmoJbNAH6kLmebB@public.gmane.org>
2012-03-05 15:47 ` Mike Galbraith
2012-03-05 15:47 ` Mike Galbraith
2012-03-05 15:47 ` Mike Galbraith
[not found] ` <1330962421.7368.69.camel-YqMYhexLQo31wTEvPJ5Q0F6hYfS7NtTn@public.gmane.org>
2012-03-05 19:58 ` Mike Galbraith
2012-03-05 19:58 ` Mike Galbraith
2012-03-02 2:43 ` Kay Sievers
2012-03-02 2:43 ` Kay Sievers
[not found] ` <CAPXgP12_A=uz_p92eBN49DTSKj7iP0rChW9cE81aZKWEjOH5nA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-03-02 10:15 ` Peter Zijlstra
2012-03-02 10:15 ` Peter Zijlstra
2012-03-02 10:15 ` Peter Zijlstra
2012-03-02 11:16 ` Michal Schmidt
2012-03-02 11:16 ` Michal Schmidt
[not found] ` <4F50ABF2.5070809-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-03-02 11:24 ` Peter Zijlstra
2012-03-02 11:24 ` Peter Zijlstra
2012-03-02 11:24 ` Peter Zijlstra
2012-03-01 20:26 ` Mike Galbraith
2012-02-23 21:38 ` Vivek Goyal
2012-02-23 21:38 ` Vivek Goyal
[not found] ` <20120223213847.GK19691-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-02-23 22:34 ` Tejun Heo
2012-02-23 22:34 ` Tejun Heo
[not found] ` <20120223223457.GJ22536-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2012-02-28 21:16 ` Vivek Goyal
2012-02-28 21:16 ` Vivek Goyal
[not found] ` <20120228211627.GH9920-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-02-28 21:21 ` Peter Zijlstra
2012-02-28 21:21 ` Peter Zijlstra
2012-02-28 21:35 ` Vivek Goyal
2012-02-28 21:35 ` Vivek Goyal
[not found] ` <20120228213526.GI9920-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-02-28 21:43 ` Peter Zijlstra
2012-02-28 21:43 ` Peter Zijlstra
2012-02-28 21:54 ` Vivek Goyal
2012-02-28 21:54 ` Vivek Goyal
[not found] ` <20120228215439.GJ9920-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-02-28 22:00 ` Peter Zijlstra
2012-02-28 22:00 ` Peter Zijlstra
2012-02-28 22:31 ` Vivek Goyal
2012-02-28 22:31 ` Vivek Goyal
2012-02-28 21:53 ` Peter Zijlstra
2012-02-28 21:53 ` Peter Zijlstra
2012-02-28 22:09 ` Vivek Goyal [this message]
2012-02-28 22:09 ` Vivek Goyal
2012-02-24 11:33 ` Peter Zijlstra
2012-02-24 11:33 ` Peter Zijlstra
2012-02-22 16:57 ` Vivek Goyal
2012-02-22 18:33 ` Tejun Heo
2012-02-22 18:33 ` Tejun Heo
2012-02-22 18:33 ` Tejun Heo
[not found] ` <20120222183351.GD32694-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2012-02-23 19:41 ` Vivek Goyal
2012-02-23 19:41 ` Vivek Goyal
[not found] ` <20120223194109.GI19691-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-02-23 22:38 ` Tejun Heo
2012-02-23 22:38 ` Tejun Heo
2012-02-23 22:38 ` Tejun Heo
2012-02-23 7:59 ` Li Zefan
2012-02-23 7:59 ` Li Zefan
2012-02-23 7:59 ` Li Zefan
[not found] ` <4F45F1F0.2010102-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2012-02-23 20:32 ` Vivek Goyal
2012-02-23 20:32 ` Vivek Goyal
2012-02-23 8:22 ` Li Zefan
2012-02-23 8:22 ` Li Zefan
2012-02-23 8:22 ` Li Zefan
[not found] ` <4F45F742.1060605-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2012-02-23 17:33 ` Tejun Heo
2012-02-23 17:33 ` Tejun Heo
2012-02-23 17:33 ` Tejun Heo
2012-03-03 9:58 ` Eric W. Biederman
[not found] ` <m162em2efy.fsf-+imSwln9KH6u2/kzUuoCbdi2O/JbrIOy@public.gmane.org>
2012-03-03 14:26 ` Serge Hallyn
2012-03-03 14:26 ` Serge Hallyn
2012-03-03 14:26 ` Serge Hallyn
2012-03-05 11:37 ` Lennart Poettering
2012-03-05 11:37 ` Lennart Poettering
2012-03-05 11:37 ` Lennart Poettering
2012-03-12 22:10 ` Tejun Heo
2012-03-12 22:10 ` Tejun Heo
2012-03-12 22:10 ` Tejun Heo
[not found] ` <20120312221050.GG23255-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2012-03-12 22:22 ` Peter Zijlstra
2012-03-12 22:22 ` Peter Zijlstra
2012-03-12 22:22 ` Peter Zijlstra
2012-03-12 22:28 ` Tejun Heo
2012-03-12 22:28 ` Tejun Heo
[not found] ` <20120312222817.GI23255-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2012-03-12 22:31 ` Lennart Poettering
2012-03-12 22:31 ` Lennart Poettering
2012-03-12 22:31 ` Lennart Poettering
[not found] ` <20120312223113.GB18359-kS5D54t9nk0aINubkmmoJbNAH6kLmebB@public.gmane.org>
2012-03-12 23:00 ` Tejun Heo
2012-03-12 23:00 ` Tejun Heo
2012-03-12 23:00 ` Tejun Heo
[not found] ` <20120312230020.GL23255-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2012-03-12 23:02 ` Peter Zijlstra
2012-03-12 23:02 ` Peter Zijlstra
2012-03-12 23:09 ` Tejun Heo
2012-03-12 23:09 ` Tejun Heo
2012-03-12 23:09 ` Tejun Heo
2012-03-12 23:43 ` Lennart Poettering
2012-03-12 23:43 ` Lennart Poettering
2012-03-12 22:32 ` Peter Zijlstra
2012-03-12 22:32 ` Peter Zijlstra
2012-03-12 22:39 ` Tejun Heo
2012-03-12 22:39 ` Tejun Heo
[not found] ` <20120312223944.GJ23255-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2012-03-12 22:44 ` Peter Zijlstra
2012-03-12 22:44 ` Peter Zijlstra
2012-03-12 23:04 ` Tejun Heo
2012-03-12 23:04 ` Tejun Heo
[not found] ` <20120312230416.GM23255-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2012-03-13 14:10 ` Vivek Goyal
2012-03-13 14:10 ` Vivek Goyal
[not found] ` <20120313141032.GD29169-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-03-13 16:11 ` C Anthony Risinger
2012-03-13 16:11 ` C Anthony Risinger
2012-03-13 16:11 ` C Anthony Risinger
[not found] ` <CAGAVQTGus7LUWV3AdhAFy--gr=uJRWtSGjuP69-EckBiXy0qVg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-03-13 16:30 ` C Anthony Risinger
2012-03-13 16:30 ` C Anthony Risinger
2012-03-13 17:25 ` Peter Zijlstra
2012-03-13 17:25 ` Peter Zijlstra
2012-03-13 17:31 ` Peter Zijlstra
2012-03-13 17:31 ` Peter Zijlstra
2012-03-13 10:11 ` Glauber Costa
2012-03-13 10:11 ` Glauber Costa
2012-03-13 10:11 ` Glauber Costa
2012-03-12 22:39 ` Tejun Heo
2012-03-13 14:03 ` Vivek Goyal
2012-03-13 14:03 ` Vivek Goyal
[not found] ` <20120313140345.GC29169-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-03-13 15:59 ` Tejun Heo
2012-03-13 15:59 ` Tejun Heo
2012-03-13 15:59 ` Tejun Heo
[not found] ` <20120313155955.GB7349-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2012-03-16 23:14 ` James Bottomley
2012-03-16 23:14 ` James Bottomley
2012-03-16 23:14 ` James Bottomley
2012-03-12 22:37 ` Serge Hallyn
2012-03-12 22:37 ` Serge Hallyn
2012-03-12 22:37 ` Serge Hallyn
2012-03-12 22:55 ` Tejun Heo
2012-03-12 22:55 ` Tejun Heo
2012-03-12 22:55 ` Tejun Heo
2012-03-13 13:49 ` Vivek Goyal
2012-03-13 13:49 ` Vivek Goyal
[not found] ` <20120313134922.GB29169-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-03-13 16:02 ` Tejun Heo
2012-03-13 16:02 ` Tejun Heo
2012-03-13 16:02 ` Tejun Heo
-- strict thread matches above, loose matches on Subject: below --
2012-02-21 21:19 Tejun Heo
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=20120228220932.GK9920@redhat.com \
--to=vgoyal-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
--cc=akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org \
--cc=cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
--cc=fweisbec-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=hch-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org \
--cc=kay.sievers-tD+1rO4QERM@public.gmane.org \
--cc=lennart-mdGvqq1h2p+GdvJs77BJ7Q@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=peterz-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org \
--cc=tj-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
/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 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.