Re: [patch] new scheduler

Rik van Riel (riel@nl.linux.org)
Mon, 10 May 1999 00:53:57 +0200 (CEST)


On Mon, 10 May 1999, Ingo Molnar wrote:
> On Sun, 9 May 1999, Rik van Riel wrote:
>
> > attached is a patch that changes the Linux scheduler
> > to do the following things better/right:
> > - niced tasks use far less CPU than before
> > - interactive tasks always have a higher priority
> > than running tasks (more so than it's the case now)
> > - global priority recalculation has been changed to a
> > new mechanism involving p->defer, indicating when a
> > program is to get it's next time slice
>
> you have removed priority recalculation, but priority recalculation has a
> goal: not running processes gather priority approaching maximum priority
> (40) logarithmically. This is how we 'boost' interactive processes
> automatically. Maybe i've misread your patch, but where is this mechanizm
> now? (or if it's replaced by something else, how does that work?)

The mechanism is in the handling of the p->defer value.

If the proces runs out of it's time slice, it gets
put away in time according to it's priority. If it
sleeps and returns after p->defer has happened, it
will get full priority and p->counter will be set
to full.

Handling of interactive and multimedia tasks will
be done because CPU hogs are pushed back in time
and interactive and multimedia tasks aren't put
back as much.

I'll write an explanation of my algorithm later
this week, but I believe that it'll give performance
equal to or better than the current scheduler.

I really welcome tests -- I'll do one myself against
2.2.7 tomorrow because the new interrupt handling in
2.2.8 doesn't allow me to boot :(

cheers,

Rik -- Open Source: you deserve to be in control of your data.
+-------------------------------------------------------------------+
| Le Reseau netwerksystemen BV: http://www.reseau.nl/ |
| Linux Memory Management site: http://humbolt.geo.uu.nl/Linux-MM/ |
| Nederlandse Linux documentatie: http://www.nl.linux.org/ |
+-------------------------------------------------------------------+

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/