Skip site navigation (1)Skip section navigation (2)
From:      Rik van Riel <riel@conectiva.com.br>
To:        Julian Elischer <julian@elischer.org>
Cc:        Bill Huey <billh@gnuppy.monkey.org>, <freebsd-arch@freebsd.org>
Subject:   Re: New Linux threading model
Message-ID:  <Pine.LNX.4.44L.0209201652330.1857-100000@imladris.surriel.com>
In-Reply-To: <Pine.BSF.4.21.0209201226190.16925-100000@InterJet.elischer.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 20 Sep 2002, Julian Elischer wrote:
> On Fri, 20 Sep 2002, Rik van Riel wrote:
> > There don't seem to be any O(n) loops left in or near this scheduler,
> > meaning that 1:1 threading with lots of threads becomes possible.
>
> The FreeBSD scheduler is moving towards a big rewrite but we want to
> change "one thing at a time" :-) in that area..

This is doable in a smallish number of steps, which don't
even need to be done in this order:

1) per-cpu runqueues instead of a global one, which wants ...

2) ... load balancer between these per-cpu queues

3) two runqueue arrays (current and expired) instead of
   just one, which enables ...

4) ... event-driver priority recalculation, instead of
   recalculating the priority of each task separately

These changes are probably small enough that they can be done
without the risk of destabilising anything.

Rik
-- 
Bravely reimplemented by the knights who say "NIH".

http://www.surriel.com/		http://distro.conectiva.com/

Spamtraps of the month:  september@surriel.com trac@trac.org


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.LNX.4.44L.0209201652330.1857-100000>