On Tue, Apr 17, 2007 at 09:01:55AM +0200, Nick Piggin wrote: > On Mon, Apr 16, 2007 at 11:26:21PM -0700, William Lee Irwin III wrote: > > On Mon, Apr 16, 2007 at 11:09:55PM -0700, William Lee Irwin III wrote: > > >> All things are not equal; they all have different properties. I like > > > > On Tue, Apr 17, 2007 at 08:15:03AM +0200, Nick Piggin wrote: > > > Exactly. So we have to explore those properties and evaluate performance > > > (in all meanings of the word). That's only logical. > > > > Any chance you'd be willing to put down a few thoughts on what sorts > > of standards you'd like to set for both correctness (i.e. the bare > > minimum a scheduler implementation must do to be considered valid > > beyond not oopsing) and performance metrics (i.e. things that produce > > numbers for each scheduler you can compare to say "this scheduler is > > better than this other scheduler at this."). > > Yeah I guess that's the hard part :) > > For correctness, I guess fairness is an easy one. I think that unfairness > is basically a bug and that it would be very unfortunate to merge something > unfair. But this is just within the context of a single runqueue... for > better or worse, we allow some unfairness in multiprocessors for performance > reasons of course.
I'm a big fan of fairness, but I think it's a bit early to declare it a mandatory feature. Bounded unfairness is probably something we can agree on, ie "if we decide to be unfair, no process suffers more than a factor of x". > Latency. Given N tasks in the system, an arbitrary task should get > onto the CPU in a bounded amount of time (excluding events like freak > IRQ holdoffs and such, obviously -- ie. just considering the context > of the scheduler's state machine). This is a slightly stronger statement than starvation-free (which is obviously mandatory). I think you're looking for something like "worst-case scheduling latency is proportional to the number of runnable tasks". Which I think is quite a reasonable requirement. I'm pretty sure the stock scheduler falls short of both of these guarantees though. -- 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 [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/