Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Jan 2003 10:15:23 -0800
From:      Luigi Rizzo <rizzo@icir.org>
To:        David Schultz <dschultz@uclink.Berkeley.EDU>
Cc:        Peter Jeremy <peterjeremy@optushome.com.au>, Robert Watson <rwatson@FreeBSD.ORG>, Jeff Roberson <jroberson@chesapeake.net>, arch@FreeBSD.ORG
Subject:   Re: New scheduler - Interactivity fixes
Message-ID:  <20030129101523.A54088@xorpc.icir.org>
In-Reply-To: <20030129180405.GA3139@HAL9000.homeunix.com>; from dschultz@uclink.Berkeley.EDU on Wed, Jan 29, 2003 at 10:04:05AM -0800
References:  <Pine.BSF.4.21.0301252309090.89171-100000@InterJet.elischer.org> <Pine.NEB.3.96L.1030128111454.87213G-100000@fledge.watson.org> <20030129094943.GA27833@cirb503493.alcatel.com.au> <20030129180405.GA3139@HAL9000.homeunix.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Jan 29, 2003 at 10:04:05AM -0800, David Schultz wrote:
> Thus spake Peter Jeremy <peterjeremy@optushome.com.au>:
> > I'd prefer to allow multiple schedulers to be compiled in (or KLD'd),
> > with a sysctl to select which one (preferably alterable at runtime).
> > This reduces(?) the problem to:
> > - ensure that at least one scheduler is present before trying to use it
> > - picking a default scheduler when multiple schedulers are present.
> 
> Some researchers at Microsoft implmeneted dynamically loadable
> schedulers for Windows NT a few years ago.  There idea was to

and the same concept is used in our proportional share scheduler,
where you can switch scheduler at runtime and have multiple
schedulers loaded at compile time (possibly kld works too, I
have just been too lazy to write a suitable Makefile for the module)

An older version of that code (for -stable) can be found at

http://info.iet.unipi.it/~luigi/ps_sched.20020719a.diff

I have been trying to suggest the introduction of this virtual
interface for dynamically loadable schedulers for a while,
with little success unfortunately (random complaints about
the overhead of going through an indirect function calls
when a scheduler function should be invoked -- which is
totally irrelevant given how expensive is the effect of
a potential context switch, and the fact that we are already
paying that overhead one or more times for each incoming
packet, an event that is 1..3 orders of magnitude more frequent).

	cheers
	luigi

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?20030129101523.A54088>