Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]

Davide Libenzi
2007-04-18T19:05:27Z

On Wed, 18 Apr 2007, Matt Mackall wrote:

> On Wed, Apr 18, 2007 at 07:48:21AM -0700, Linus Torvalds wrote:
> > And "fairness by euid" is probably a hell of a lot easier to do than
> > trying to figure out the wakeup matrix.
>
> For the record, you actually don't need to track a whole NxN matrix
> (or do the implied O(n**3) matrix inversion!) to get to the same
> result. You can converge on the same node weightings (ie dynamic
> priorities) by applying a damped function at each transition point
> (directed wakeup, preemption, fork, exit).
>
> The trouble with any scheme like this is that it needs careful tuning
> of the damping factor to converge rapidly and not oscillate and
> precise numerical attention to the transition functions so that the sum of
> dynamic priorities is conserved.

Doing that inside the boundaries of the time constrains imposed by a
scheduler, is the interesting part. Given also that the size (and members)
of it (matrix) is dynamic.
Also, a "wakup matrix" (if the name correctly pictures what it is for)
would help with latencies and priority inheritance, but not for
global fairness.
The maniacal fairness focus we're seeing now, is due to the fact the
mainline can have extremely unfair behaviour under certain conditions.
IMO fairness, although important, should not be main objective of the
scheduler rewrite. Simplification and predictability should be on higher
priority, with interactivity achievements bound to decent fariness
constraints.

- Davide