[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070417220809.GF11166@waste.org>
Date: Tue, 17 Apr 2007 17:08:09 -0500
From: Matt Mackall <mpm@...enic.com>
To: Ingo Molnar <mingo@...e.hu>
Cc: William Lee Irwin III <wli@...omorphy.com>,
Davide Libenzi <davidel@...ilserver.org>,
Nick Piggin <npiggin@...e.de>,
Peter Williams <pwil3058@...pond.net.au>,
Mike Galbraith <efault@....de>,
Con Kolivas <kernel@...ivas.org>, ck list <ck@....kolivas.org>,
Bill Huey <billh@...ppy.monkey.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Arjan van de Ven <arjan@...radead.org>,
Thomas Gleixner <tglx@...utronix.de>
Subject: Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
On Tue, Apr 17, 2007 at 11:24:22AM +0200, Ingo Molnar wrote:
>
> * William Lee Irwin III <wli@...omorphy.com> wrote:
>
> > [...] Also rest assured that the tone of the critique is not hostile,
> > and wasn't meant to sound that way.
>
> ok :) (And i guess i was too touchy - sorry about coming out swinging.)
>
> > Also, given the general comments it appears clear that some
> > statistical metric of deviation from the intended behavior furthermore
> > qualified by timescale is necessary, so this appears to be headed
> > toward a sort of performance metric as opposed to a pass/fail test
> > anyway. However, to even measure this at all, some statement of
> > intention is required. I'd prefer that there be a Linux-standard
> > semantics for nice so results are more directly comparable and so that
> > users also get similar nice behavior from the scheduler as it varies
> > over time and possibly implementations if users should care to switch
> > them out with some scheduler patch or other.
>
> yeah. If you could come up with a sane definition that also translates
> into low overhead on the algorithm side that would be great!
How's this:
If you're running two identical CPU hog tasks A and B differing only by nice
level (Anice, Bnice), the ratio cputime(A)/cputime(B) should be a
constant f(Anice - Bnice).
Other definitions make things hard to analyze and probably not
well-bounded when confronted with > 2 tasks.
I -think- this implies keeping a separate scaled CPU usage counter,
where the scaling factor is a trivial exponential function of nice
level where f(0) == 1. Then you schedule based on this scaled usage
counter rather than unscaled.
I also suspect we want to keep the exponential base small so that the
maximal difference is 10x-100x.
--
Mathematics is the supreme nostalgia of our time.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists