RELENG_6: Which scheduler for SMP?
Michael Vince
mv at roq.com
Thu Dec 29 13:56:52 PST 2005
Mark Ovens wrote:
> I've never had any success with the ULE scheduler on my dual Athlon
> box running RELENG_5; it was so unstable it made Windows 3.1 look
> stable. In fact my current build, cvsup'd a couple of days ago, won't
> even boot with ULE.
>
> From what I remember, ULE was intended to become the default scheduler
> during the life of 5.0 but that hasn't happened.
>
> I've just cvsup'd the source for RELENG_6 and I'm surprised to find in
> the GENERIC config file:
>
> #options SCHED_ULE # ULE scheduler
> options SCHED_4BSD # 4BSD scheduler
>
> so it seems 4BSD is still the default scheduler. Is ULE _still_
> considered to be in development/experimental? Even the SMP config file
> doesn't use ULE.
>
> Also in GENERIC:
>
> options PREEMPTION # Enable kernel thread preemption
>
> [....]
>
> options ADAPTIVE_GIANT # Giant mutex is adaptive.
>
> Yet in src/sys/conf/NOTES, ADAPTIVE_GIANT is listed under SMP Options
> and PREEMPTION is listed under SMP Debugging Options which makes it
> surprising that they are in the GENERIC config file.
>
> What I am trying to decide is whether there any point in making the
> jump from a very stable RELENG_5 system to RELENG_6. AIUI the ULE
> scheduler and it's associated options optimize the use of multiple
> CPUs and by staying with 4BSD I'm not getting the best performance
> from my system.
>
> Can anyone offer any advice on this please?
>
> The machine has dual Athlon MP2800s on a Asus A7M266-D mobo, 1Gbyte
> ECC RAM and all SCSI disks and optical drives.
>
>
I have been benchmarking a Java servlet under ULE, and I couldn't get
result scores as high under ULE as I could under the regular the 4BSD
(although it wasn't far off) and when I left the machine benchmarking
all night under ULE I came back in the morning to find the machine
unresponsive and in need of a hard reboot.
Mike
More information about the freebsd-stable
mailing list