From: Peter Williams <peterw@aurema.com>
To: Andy Lutomirski <luto@myrealbox.com>
Cc: John Lee <johnl@aurema.com>, linux-kernel@vger.kernel.org
Subject: Re: [RFC][PATCH] O(1) Entitlement Based Scheduler
Date: Mon, 01 Mar 2004 13:54:32 +1100 [thread overview]
Message-ID: <4042A5E8.9040706@aurema.com> (raw)
In-Reply-To: <404297D1.5010301@myrealbox.com>
Andy Lutomirski wrote:
> How hard would it be to make shares hierarchial? For example (quoted
> names are just descriptive):
>
> "guaranteed" (10 shares) "user" (5 shares)
> | |
> ----------------- -----------------
> | | | |
> "root" (1) "apache" (2) "bob" (5) "fred" (5)
> | | | |
> (more groups?) (web servers) etc. etc.
>
>
> This way one user is prevented from taking unfair CPU time by launcing
> too many processes, apache gets enough time no matter what, etc. In
> this scheme, numbers of shares would only be comparable if they are
> children of the same node. Also, it now becomes safe to let users
> _increase_ priorities of their processes -- it doesn't affect anyone else.
>
> Ignoring limts, this should be just an exercise in keeping track of
> shares and eliminating the 1/420 limit in precision. It would take some
> thought to figure out what nice should do.
>
As Peter Chubb has stated such control is possible and is available on
Tru64, Solaris and Windows with Aurema's (<http://www.aurema.com>)
ARMTech product. The CKRM project also addresses this issue.
>
> Also, could interactivity problems be solved something like this:
>
> prio = ( (old EBS usage ratio) - 0.5 ) * i + 0.5
>
> "i" would be a per-process interactivity factor (normally 1, but higher
> for interactive processes) which would only boost them when their CPU
> usage is low. This makes interactive processes get their timeslices
> early (very high priority at low CPU consumption) but prevents abuse by
> preventing excessive CPU consumption. This could even by set by the
> (untrusted) process itself.
>
Interactive processes do very well under EBS without any special treatment.
Programs such as xmms aren't really interactive processes although they
usually have a very low CPU usage rate like interactive processes. What
distinguishes them is their need for REGULAR access to the CPU. It's
unlikely that such a modification would help with the need for regularity.
Once again I'll stress that in order to cause xmms to skip we had to (on
a single CPU machine) run a kernel build with -j 16 which causes a
system load well in excess of 10 and is NOT a normal load. Under normal
loads xmms performs OK.
>
> I imagine that these two together would nicely solve most interactivity
> and fairness issues -- the former prevents starvation by other users and
> the latter prevents latency caused by large numbers of CPU-light tasks.
>
>
> Is this sane?
Yes. Fairness between users rather than between tasks is a sane desire
but beyond the current scope of EBS.
> And does it break the O(1) promotion algorithm?
No, it would not break the O(1) promotion algorithm.
Peter
--
Dr Peter Williams, Chief Scientist peterw@aurema.com
Aurema Pty Limited Tel:+61 2 9698 2322
PO Box 305, Strawberry Hills NSW 2012, Australia Fax:+61 2 9699 9174
79 Myrtle Street, Chippendale NSW 2008, Australia http://www.aurema.com
next prev parent reply other threads:[~2004-03-01 2:54 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <fa.jgj0bdi.b3u6qk@ifi.uio.no>
2004-03-01 1:54 ` [RFC][PATCH] O(1) Entitlement Based Scheduler Andy Lutomirski
2004-03-01 2:54 ` Peter Williams [this message]
2004-03-01 3:46 ` Andy Lutomirski
2004-03-01 4:18 ` Peter Williams
2004-03-02 23:36 ` Peter Williams
[not found] <1vuMd-5jx-5@gated-at.bofh.it>
[not found] ` <1vuMd-5jx-7@gated-at.bofh.it>
[not found] ` <1vuMd-5jx-9@gated-at.bofh.it>
[not found] ` <1vuMd-5jx-11@gated-at.bofh.it>
[not found] ` <1vuMd-5jx-3@gated-at.bofh.it>
[not found] ` <1vvyx-6jy-13@gated-at.bofh.it>
[not found] ` <1vBE2-48V-21@gated-at.bofh.it>
2004-03-03 21:38 ` Bill Davidsen
[not found] <fa.fi4j08o.17nchps@ifi.uio.no.suse.lists.linux.kernel>
[not found] ` <fa.ctat17m.8mqa3c@ifi.uio.no.suse.lists.linux.kernel>
[not found] ` <yydjishqw10p.fsf@galizur.uio.no.suse.lists.linux.kernel>
[not found] ` <40426E1C.8010806@aurema.com.suse.lists.linux.kernel>
2004-03-03 2:48 ` Andi Kleen
2004-03-03 3:45 ` Peter Williams
2004-03-03 10:13 ` Andi Kleen
2004-03-03 23:46 ` Peter Williams
2004-03-03 15:57 ` Andi Kleen
2004-03-04 0:41 ` Peter Williams
2004-03-05 3:55 ` Andi Kleen
[not found] <fa.ftul5bl.nlk3pr@ifi.uio.no>
[not found] ` <fa.cvc8vnj.ahebjd@ifi.uio.no>
2004-03-01 9:18 ` Joachim B Haga
2004-03-01 10:18 ` Paul Wagland
2004-03-01 19:11 ` Mike Fedyk
[not found] <894006121@toto.iv>
2004-03-01 0:00 ` Peter Chubb
2004-03-02 1:25 ` Peter Williams
[not found] <fa.fi4j08o.17nchps@ifi.uio.no>
[not found] ` <fa.ctat17m.8mqa3c@ifi.uio.no>
2004-02-29 11:58 ` Joachim B Haga
2004-02-29 20:39 ` Paul Jackson
2004-02-29 22:56 ` Peter Williams
[not found] <1t8wp-qF-11@gated-at.bofh.it>
[not found] ` <1th6J-az-13@gated-at.bofh.it>
[not found] ` <403E2929.2080705@tmr.com>
2004-02-27 3:44 ` Rik van Riel
2004-02-28 21:27 ` Bill Davidsen
2004-02-28 23:55 ` Peter Williams
2004-03-04 21:08 ` Timothy Miller
[not found] <1tfy0-7ly-29@gated-at.bofh.it>
[not found] ` <1thzJ-A5-13@gated-at.bofh.it>
[not found] ` <1tjrN-2m5-1@gated-at.bofh.it>
[not found] ` <1tjLa-2Ab-9@gated-at.bofh.it>
[not found] ` <1tlaf-3OY-11@gated-at.bofh.it>
[not found] ` <1tljX-3Wf-5@gated-at.bofh.it>
[not found] ` <1tznd-CP-35@gated-at.bofh.it>
[not found] ` <1tzQe-10s-25@gated-at.bofh.it>
2004-02-26 20:14 ` Bill Davidsen
2004-02-26 3:30 Albert Cahalan
2004-02-26 6:19 ` Peter Williams
2004-02-26 17:57 ` Albert Cahalan
2004-02-26 23:24 ` Peter Williams
2004-03-01 3:47 ` Peter Williams
[not found] <fa.f12rt3d.c0s9rt@ifi.uio.no>
[not found] ` <fa.ishajoq.q5g90m@ifi.uio.no>
2004-02-25 23:33 ` Junio C Hamano
2004-02-26 8:15 ` Catalin BOIE
-- strict thread matches above, loose matches on Subject: below --
2004-02-25 14:35 John Lee
2004-02-25 17:09 ` Timothy Miller
2004-02-25 22:12 ` John Lee
2004-02-26 0:31 ` Timothy Miller
2004-02-26 2:04 ` John Lee
2004-02-26 2:18 ` Peter Williams
2004-02-26 2:42 ` Mike Fedyk
2004-02-26 4:10 ` Peter Williams
2004-02-26 4:19 ` Mike Fedyk
2004-02-26 19:23 ` Shailabh Nagar
2004-02-26 19:46 ` Mike Fedyk
2004-02-26 20:42 ` Shailabh Nagar
2004-02-26 16:10 ` Timothy Miller
2004-02-26 19:47 ` Mike Fedyk
2004-02-26 22:51 ` Peter Williams
2004-02-27 10:06 ` Helge Hafting
2004-02-27 11:04 ` Peter Williams
2004-02-26 16:08 ` Timothy Miller
2004-02-26 16:51 ` Rik van Riel
2004-02-26 20:15 ` Peter Williams
2004-02-27 14:46 ` Timothy Miller
2004-02-28 5:00 ` Peter Williams
2004-03-04 21:18 ` Robert White
2004-03-04 23:15 ` Peter Williams
2004-02-26 2:48 ` Nuno Silva
2004-02-26 4:25 ` Peter Williams
2004-02-26 15:57 ` Rik van Riel
2004-02-26 19:28 ` Shailabh Nagar
2004-02-26 16:12 ` Timothy Miller
2004-02-25 22:51 ` Pavel Machek
2004-02-26 3:14 ` John Lee
2004-02-25 23:45 ` Rik van Riel
2004-02-26 7:18 ` John Lee
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=4042A5E8.9040706@aurema.com \
--to=peterw@aurema.com \
--cc=johnl@aurema.com \
--cc=linux-kernel@vger.kernel.org \
--cc=luto@myrealbox.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: 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