|| ||Linus Torvalds <torvalds-AT-linux-foundation.org>|
|| ||Mike Galbraith <efault-AT-gmx.de>|
|| ||Re: [PATCH][RSDL-mm 0/7] RSDL cpu scheduler for 2.6.21-rc3-mm2|
|| ||Mon, 12 Mar 2007 08:26:25 -0700 (PDT)|
|| ||Con Kolivas <kernel-AT-kolivas.org>, Ingo Molnar <mingo-AT-elte.hu>,
linux kernel mailing list <linux-kernel-AT-vger.kernel.org>,
ck list <ck-AT-vds.kolivas.org>,
Andrew Morton <akpm-AT-linux-foundation.org>|
On Mon, 12 Mar 2007, Mike Galbraith wrote:
> On Mon, 2007-03-12 at 22:23 +1100, Con Kolivas wrote:
> > Mike the cpu is being proportioned out perfectly according to fairness as I
> > mentioned in the prior email, yet X is getting the lower latency scheduling.
> > I'm not sure within the bounds of fairness what more would you have happen to
> > your liking with this test case?
> It has been said that "perfection is the enemy of good". The two
> interactive tasks receiving 40% cpu while two niced background jobs
> receive 60% may well be perfect, but it's damn sure not good.
Well, the real problem is really "server that works on behalf of somebody
X is just the worst *practical* example of this, since not only is it the
most common such server, it's also a case where people see interactive
issues really easily.
And the problem is that a lot of clients actually end up doing *more* in
the X server than they do themselves directly. Doing things like showing a
line of text on the screen is a lot more expensive than just keeping track
of that line of text, so you end up with the X server easily being marked
as getting "too much" CPU time, and the clients as being starved for CPU
time. And then you get bad interactive behaviour.
So "good fairness" really should involve some notion of "work done for
others". It's just not very easy to do..
to post comments)