Subject: Re: Further scheduler changes
To: David Laight <david@l8s.co.uk>
From: Thor Lancelot Simon <tls@rek.tjls.com>
List: tech-kern
Date: 09/19/2006 13:50:19
On Tue, Sep 19, 2006 at 06:14:59PM +0100, David Laight wrote:
> On Tue, Sep 19, 2006 at 01:30:56AM +0200, Daniel Sieger wrote:
> > Hi all,
> > ok, I would like to get some suggestions about how to further improve
> > the scheduler. The first thing that comes to my mind is to design a
> > general scheduling API that allows for the implementation of different
> > algorithms and/or models. FreeBSD did a similar job, IIRC. So, the
> > next steps would be i) to define the API itself and ii) to separate
> > the traditional 4.4BSD scheduler from kern_synch.c.
> > 
> > Any comments/suggestions?
> 
> One 'really useful feature' that any change should allow for is
> process affinities (ie tying a process to a physical cpu).

I should note that we have already been offered a patch to do this, by
Christian Limpach.  It was rejected -- to my utter disbelief -- by an
influential developer because, since it packed "which run queue am I
on" into an integer with one bit per CPU, it would require later revision
to accomodate systems with more than 32 processors.

I think this is a canonical example of how the best is the enemy of the
good.  ;-)  But perhaps when I get a 32-chip system, I will feel otherwise.

Thor