FreeBSD: ULE Becoming Default Scheduler In -current

Submitted by Jeremy
on December 13, 2003 - 9:28am

Jeff Roberson announced that his ULE scheduler [story] is becoming the default scheduler during the FreeBSD 5.3 development cycle [forum]. He explains:

"The plan is to leave ULE as the default until we get to 5.3 at which point we will decide whether or not it is production quality. The most [untested] workload that I know of is on massive multiuser systems with lots of interactive tasks. If anyone has such a system, I would love to hear of feedback while running ULE. For anyone else, if your workload is either improved or hindered, I'd appreciate a mail with the a description of your workload, your hardware, behavior with ULE, and behavior with 4BSD."

ULE was merged into FreeBSD 5.1 [story] as an "experimental" process scheduler designed to bring many benefits to SMP servers. The original design is actually based off Ingo Molnar's O(1) scheduler which was merged into the Linux kernel [story] during 2.5 development [forum]. When asked about how FreeBSD interactivity with ULE would compare to Linux interactivity, Con Kolivas [interview] suggested that, "it is prone to all the same issues as the vanilla 2.5 scheduler", issues that were addressed by Con during 2.5 development [forum].


From: Jeff Roberson [email blocked]
To:  current
Subject: ULE and current.
Date: Sun, 7 Dec 2003 08:30:13 -0500 (EST)

Now that 5.2 has been branched I will soon be making ULE the default
scheduler in GENERIC.  I'm hoping that before I throw the switch I'll get
more feedback from current users.  The only big change I have in the
pipeline for ULE is improved HTT support.  This has all been coded and
tested locally.  I'm going to commit this after things settle down on HEAD
a little more.

The plan is to leave ULE as the default until we get to 5.3 at which point
we will decide whether or not it is production quality.  The most
untest workload that I know of is on massive multiuser systems with lots
of interactive tasks.  If anyone has such a system, I would love to hear
of feedback while running ULE.  For anyone else, if your workload is
either improved or hindered, I'd appreciate a mail with the a description
of your workload, your hardware, behavior with ULE, and behavior with
4BSD.

Thanks,
Jeff


From: Peter Wemm [email blocked] Subject: Re: ULE and current. Date: Sun, 07 Dec 2003 13:43:16 -0800 FWIW, this sounds good to me. We've been starting to run ULE by default on the reference machines on the freebsd.org cluster for a while. Cheers, -Peter -- Peter Wemm - [email blocked]; peter@FreeBSD.org; peter@yahoo-inc.com "All of this is for nothing if we don't go to the stars" - JMS/B5
From: Sean Chittenden [email blocked] Subject: Re: ULE and current. Date: Sun, 7 Dec 2003 16:05:22 -0800 I've been using ULE for several months now and have found it usable, though nice'ing various processes doesn't seem to influence the scheduler much. I can run a non-parallel buildworld at +10, xmms at -10, and xmms is still CPU starved (is far from IO bound too) and it sounds like I'm listening to a 9600 baud modem. It's kind of a cool effect, but I don't think it's the desired by the masses. Lastly, are you going to continue to investigate the performance differences between BSD and ULE? I haven't seen any changes to improve ULE's performance of the late. Just some feedback/questions. -sc -- Sean Chittenden
From: Khairil Yusof [email blocked] Subject: Re: ULE and current. Date: Mon, 08 Dec 2003 09:17:58 +0800 On Sun, Dec 07, 2003 at 08:30:13AM -0500, Jeff Roberson wrote: > of feedback while running ULE. For anyone else, if your workload is > either improved or hindered, I'd appreciate a mail with the a description > of your workload, your hardware, behavior with ULE, and behavior with > 4BSD. Haven't been running ULE for a while, because I was till having slight sticky mouse problems. This is no longer the case when I tried it again yesterday. However as reported by Sean nice processes (+20) are not behaving nicely. With a niced -j2 make kernel in the background, my keyboard interactivity is badly affected (mouse is not affected however). I am not however experiencing any problems with sound. Usage is mainly for general desktop/development use. Repeating this test with 4BSD, overall interactivity feels slightly slower, no problems with keyboard, and most importantly non-niced processes are not being affected much by the nice +20 kernel build. hardware: dual p3-450 workload: general gnome desktop + kernel build (niced -20) other : libkse threading as default Even with nice problem, the overall improved interactivity and non-sticky mouse makes ULE better by default for my usage now. [application/pgp-signature (Select "Check signature" to check)]
From: Claus Guttesen [email blocked] Subject: Re: ULE and current. Date: Mon, 8 Dec 2003 09:44:11 +0100 (CET) Hi. I'm running ULE on 1 out of 6 web-servers. This is running current as of Nov. 19'th. I havent't noticed any difference in behaviour compared to the other five servers. It varies from 100 % idle to 0 %, runs quite smothly. NFS behaves nice. The other servers are all using the old BSD-scheduler and are mainly running 5.1 frozen branch. All are dual Xeons at either 2.4 or 3 Ghz. My workstation with dual pentium III @ 1 ghz goes ULE as well. Except while unpacking big files, the scheduler is behaving alot better compared to two-three months ago. regards Claus Yahoo! Mail (http://dk.mail.yahoo.com) - Gratis: 6 MB lagerplads, spamfilter og virusscan
From: Vallo Kallaste [email blocked] Subject: Re: ULE and current. Date: Wed, 10 Dec 2003 15:46:19 +0200 I have one noticeable annoyance with ULE while setiathome is running. It takes sometimes a second or two more to open mailbox (maildir format) with several hundreds of messages. If setiathome is stopped it will not happen, the mailbox will be opened instantly. The system is dual PIII-500, sources and kernel from Nov 27, two setiathome processes running at nice 20. -- Vallo Kallaste
From: Andy Farkas [email blocked] Subject: Re: ULE and current. Date: Mon, 8 Dec 2003 13:26:36 +1000 (EST) top(1) is showing odd idle times: PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU CPU COMMAND 12 root -16 0 0K 12K CPU2 2 4:59 108.59% 108.59% idle: cpu2 11 root -16 0 0K 12K CPU3 3 4:59 107.81% 107.81% idle: cpu3 14 root -16 0 0K 12K CPU0 0 4:57 106.25% 106.25% idle: cpu0 13 root -16 0 0K 12K RUN 1 4:47 106.25% 106.25% idle: cpu1 kern.version: FreeBSD 5.2-CURRENT #0: Mon Dec 8 11:48:08 EST 2003 -- :{ [email blocked] Andy Farkas System Administrator Speednet Communications http://www.speednet.com.au/
From: Peter Wemm [email blocked] Subject: Re: ULE and current. Date: Sun, 07 Dec 2003 21:11:13 -0800 I see the same thing on my quad cpu boxes too. It seems to be a ULE quirk. Cheers, -Peter -- Peter Wemm - [email blocked]; peter@FreeBSD.org; peter@yahoo-inc.com "All of this is for nothing if we don't go to the stars" - JMS/B5
From: Jeff Roberson [email blocked] Subject: Re: ULE and current. Date: Mon, 8 Dec 2003 03:35:01 -0500 (EST) Thanks, I'll look into it soon.

Related Links:

Interactivity

on
December 13, 2003 - 4:49pm

My comments about interactivity were based on the white paper Jeff put out and how interactivity is managed in that paper. Since then I have had quite an extensive discussion with Jeff about interactivity and he has done quite a bit more than what was written in that paper. It was quite interesting to note we actually agreed on more than we disagreed and while he tackled things differently, our approaches resemble each other more than they differ. I don't believe it is as tested or has as many corner cases specifically catered for, but on his description of it it sounds like interactivity should be very good.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.