On Wed, Jul 11, 2007 at 12:19:58PM +0200, Ingo Molnar wrote: > * Srivatsa Vaddagiri wrote: > > > The other alternative is to hook up group scheduler with user-id's > > (again only for 2.6.23). > > could you just try this and send an as simple patch as possible? This is > actually something that non-container people would be interested in as > well. Note that interfacing with container infrastructure doesn't preclude the possibility of doing fair-user scheduling (that a normal university server or desktop user would want). All that is needed is a daemon which listens for uid change events from kernel (using process-event connector) and moves the task (whose uid is changing) to an appropriate container for that user. Primitive source for such a daemon is attached. > (btw., if this goes into 2.6.23 then we cannot possibly turn it off in 2.6.24, The fact that we will have two interface for group scheduler in 2.6.24 is what worries me a bit (one user-id based and other container based). We would need some mechanism for admin to choose only one interface (and not both together, otherwise the group definitions may conflict), which doesn't sound very clean to me. Ideally I would have liked to hook onto only container infrastructure and let user-space decide grouping policy (whether user-id based or something else). Hmm ..would it help if I maintain a patch outside the mainline which turns on fair-user scheduling in 2.6.23-rcX? Folks will have to apply that patch on top of 2.6.23-rcX to use and test fair-user scheduling. In 2.6.24, when container infrastructure goes in, people can get fair-user scheduling off-the-shelf by simply starting the daemon attached at bootup/initrd time. Or would you rather prefer that I add user-id based interface permanently and in 2.6.24 introduce a compile/run-time switch for admin to select one of the two interfaces (user-id based or container-based)? > so it must be sane - but per UID task groups are > certainly sane, the only question is how to configure the per-UID weight > after bootup. Yeah ..the container based infrastructure allows for configuring such things very easily using a fs-based interface. In the absence of that, we either provide some /proc interface or settle for the non-configurable default that you mention below. > [the default after-bootup should be something along the > lines of 'same weight for all users, a bit more for root'.]) This would > make it possible for users to test that thing. (it would also help > X-heavy workloads.) -- Regards, vatsa