Date: Fri, 5 Nov 2004 16:26:18 -0500 From: David Schultz <das@FreeBSD.ORG> To: Devesh Shah <shah@docomolabs-usa.com> Cc: FreeBSD-hackers@FreeBSD.ORG Subject: Re: Loadable Scheduler in Freebsd Message-ID: <20041105212617.GA6762@VARK.MIT.EDU> In-Reply-To: <003f01c4c2c5$17e2c560$8a6115ac@dcml.docomolabsusa.com> References: <003f01c4c2c5$17e2c560$8a6115ac@dcml.docomolabsusa.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Nov 04, 2004, Devesh Shah wrote: > Is there a loadable scheduler exist for freebsd 5.2.1 that I > could use or any work in the pipeline to develope the > infrastructure for freebsd? I believe, Linux has policy based > loadable scheduler but could not find one for freebsd. I know, > Freebsd provides 4bsd and ULE scheduer based on the option that > one sets in kernel config file. This was discussed before around the time ULE was first committed. In short, it wouldn't be amazingly difficult to implement loadable schedulers, but the feature isn't useful enough to justify the added complexity of handing everything off from one scheduler to another. Realistically, how many times a day do you want to change from one scheduling algorithm to another? It would be more useful to write a scheduler that is able to cope with multiple priority classes (e.g. RR realtime, priority, fair share) for different sets of processes simultaneously, with a configurable way to balance load between them. (You could look at Solaris' processor sets for ideas on how to do the partitioning, although Solaris doesn't allow you to specify different scheduling algorithms.) Even this may be more complicated than what people need, however. Yet another interesting idea in this space is fine-grained application control over thread scheduling for KSE. See: http://www.cs.berkeley.edu/~brewer/papers/capriccio-sosp-2003.pdf
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20041105212617.GA6762>