From: Willy Tarreau <w@1wt.eu>
To: Bill Davidsen <davidsen@tmr.com>
Cc: Con Kolivas <kernel@kolivas.org>,
jos poortvliet <jos@mijnkamer.nl>,
ck@vds.kolivas.org, Gene Heskett <gene.heskett@gmail.com>,
linux-kernel@vger.kernel.org
Subject: Re: [ANNOUNCE] RSDL completely fair starvation free interactive cpu scheduler
Date: Tue, 6 Mar 2007 22:54:51 +0100 [thread overview]
Message-ID: <20070306215451.GB256@1wt.eu> (raw)
In-Reply-To: <45EDDF21.7090602@tmr.com>
Hi Bill,
On Tue, Mar 06, 2007 at 04:37:37PM -0500, Bill Davidsen wrote:
(...)
> The point is that no one CPU scheduler will satisfy the policy needs of
> all users, any more than one i/o scheduler does so. We have realtime
> scheduling, preempt both voluntary and involuntary, why should we not
> have multiple CPU schedulers. If Linus has an objection to plugable
> schedulers, then let's identify what the problem is and address it. If
> that means one scheduler or the other must be compiled in, or all
> compiled in and selected, so be it.
I'm not in Linus' head, but I think that he wanted the recurrent scheduler
problems to be addressed first for most users before going further. Too
much choice is often dangerous for quality. For instance, look at all the
netfilter modules. Many of them were completely bogus in their early stages,
and some of them even do mostly the same jobs, and many of them have never
left the "extra" stage. Choice is good to detect users' needs, it's good
for global evolution, but it's not as good when you want to have something
good enough for most people.
> >Then, when we have a generic, good enough scheduler for most situations, I
> >think that it could be good to get the plugsched for very specific usages.
> >People working in HPC may prefer to allocate ressource differently for
> >instance. There may also be people refusing to mix tasks from different
> >users
> >on two different siblings of one CPU for security reasons, etc... All those
> >would justify a plugable scheduler. But it should not be an excuse to
> >provide
> >a set of bad schedulers and no good one.
> >
> >
> Unless you force the the definition of "good" to "what the default
> scheduler does," there can be no "one" good one. Choice is good, no one
> is calling for bizarre niche implementations, but we have at minimum
> three CPU schedulers which as "best" for a large number of users.
> (current default, and Con's fair and interactive flavors, before you ask).
By "good", I mean a scheduler that is not trivially DoSable, and which
does not cause unexpected long pauses to some processes without any reason
(processes which cannot get any time slice for tens of seconds, or ssh
daemons which freeze under system load, to the point of totally preventing
remote administration past 50% CPU usage on some systems).
> >The CPU scheduler is often compared to the I/O schedulers while in fact
> >this
> >is a completely different story. The I/O schedulers are needed because the
> >hardware and filesystems may lead to very different behaviours, and the
> >workload may vary a lot (eg: news server, ftp server, cache, desktop, real
> >time streaming, ...). But at least, the default I/O scheduler was good
> >enough
> >for most usages, and alternative ones are here to provide optimal solutions
> >to specific needs.
> And multiple schedulers are needed because the type of load, mix of
> loads, and admin preference all require decisions at the policy which
> can't be covered by a single solution. Or at least none of the existing
> solutions, and I think letting people tune the guts of scheduler policy
> is more dangerous than giving a selection of solutions. Linux has been
> about choice all along, I hope it's nearly time for a solution better
> than patches to be presented.
There's a difference between CPU and I/O scheduler though. With the CPU
scheduler, you've always had the choice to assign per-process priorities
with "nice". Don't get me wrong, I'm all for pluggable schedulers, as I'm
an ever unsatisfied optimizer. It's just that I think it has been good to
encourage people to focus on real issues before dispersing efforts on
different needs. I hope that Con's work will eventually get merged and
that the door will be opened towards pluggable schedulers.
Best regards,
Willy
next prev parent reply other threads:[~2007-03-06 22:01 UTC|newest]
Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-03-04 7:00 [ANNOUNCE] RSDL completely fair starvation free interactive cpu scheduler Con Kolivas
2007-03-04 7:45 ` [ck] " Con Kolivas
2007-03-04 14:04 ` Con Kolivas
2007-03-04 11:08 ` Gene Heskett
2007-03-04 11:47 ` Con Kolivas
2007-03-04 12:24 ` Gene Heskett
2007-03-04 12:46 ` Con Kolivas
2007-03-04 13:25 ` Gene Heskett
2007-03-04 13:49 ` Con Kolivas
2007-03-04 14:11 ` Gene Heskett
2007-03-05 2:31 ` Zwane Mwaikambo
2007-03-05 3:16 ` Gene Heskett
2007-03-04 14:36 ` Willy Tarreau
2007-03-04 16:08 ` [ck] " jos poortvliet
2007-03-05 23:05 ` Bill Davidsen
2007-03-06 0:18 ` Con Kolivas
2007-03-06 4:41 ` Willy Tarreau
2007-03-06 5:39 ` Nicholas Miell
2007-03-06 19:04 ` jos poortvliet
2007-03-06 21:37 ` Bill Davidsen
2007-03-06 21:54 ` Willy Tarreau [this message]
2007-03-05 21:52 ` Con Kolivas
2007-03-08 8:53 ` Ingo Molnar
2007-03-08 10:07 ` Con Kolivas
2007-03-08 20:25 ` Fabio Comolli
2007-03-08 20:57 ` Con Kolivas
2007-03-08 21:31 ` Fabio Comolli
2007-03-09 21:11 ` [ck] " Rodney Gordon II
-- strict thread matches above, loose matches on Subject: below --
2007-03-04 20:35 Al Boldi
2007-03-04 21:49 ` Con Kolivas
[not found] ` <45EB45F7.3050208@simon.arlott.org.uk>
2007-03-04 22:27 ` Con Kolivas
2007-03-05 18:29 ` Simon Arlott
2007-03-05 21:36 ` Con Kolivas
2007-03-04 23:13 ` Willy Tarreau
2007-03-04 23:58 ` Con Kolivas
2007-03-05 1:09 ` Gene Heskett
2007-03-06 8:42 ` [ck] " Xavier Bestel
2007-03-06 15:15 ` Al Boldi
2007-03-11 18:11 ` Al Boldi
2007-03-11 21:52 ` Con Kolivas
2007-03-11 22:12 ` Con Kolivas
2007-03-12 4:42 ` Al Boldi
2007-03-12 4:53 ` Con Kolivas
2007-03-12 11:26 ` Al Boldi
2007-03-12 12:52 ` Con Kolivas
2007-03-12 14:14 ` Al Boldi
2007-03-12 14:58 ` [ck] " jos poortvliet
2007-03-12 17:41 ` Al Boldi
2007-03-12 18:05 ` Con Kolivas
2007-03-18 1:30 ` Bill Davidsen
2007-03-05 9:45 Nicolas Mailhot
2007-03-05 9:53 ` Gene Heskett
2007-03-05 10:00 ` Nicolas Mailhot
2007-03-05 15:22 ` Paolo Ciarrocchi
2007-03-05 18:37 ` Gene Heskett
2007-03-05 18:20 ` Lee Revell
2007-03-05 19:19 ` Gene Heskett
2007-03-05 22:40 ` Andrew Morton
2007-03-05 23:19 ` Gene Heskett
2007-03-06 2:23 ` Ed Tomlinson
2007-03-06 2:54 ` Linus Torvalds
2007-03-06 3:36 ` Gene Heskett
2007-03-09 4:04 ` Bill Davidsen
2007-03-09 6:31 ` Linus Torvalds
2007-03-09 7:04 ` Bill Huey
2007-03-09 10:54 ` William Lee Irwin III
2007-03-09 14:54 ` Bill Davidsen
2007-03-09 18:11 ` Linus Torvalds
2007-03-06 17:50 ` Bill Davidsen
2007-03-06 20:06 ` Con Kolivas
2007-03-09 4:21 ` Bill Davidsen
2007-03-06 4:57 Shawn Starr
2007-03-08 14:27 Tim Tassonis
2007-03-11 22:29 bert hubert
2007-03-11 22:57 ` Con Kolivas
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=20070306215451.GB256@1wt.eu \
--to=w@1wt.eu \
--cc=ck@vds.kolivas.org \
--cc=davidsen@tmr.com \
--cc=gene.heskett@gmail.com \
--cc=jos@mijnkamer.nl \
--cc=kernel@kolivas.org \
--cc=linux-kernel@vger.kernel.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.