ULE vs. 4BSD in RELENG_7

Josh Carroll josh.carroll at gmail.com
Wed Oct 24 06:39:39 PDT 2007

> 5-6% is a lot.  ULE has some tuning for makeworld in -current, which
> for me reduced it to less than 1% slower than 4BSD (down from 5-10%
> slower), for the case of makeworld -j4 over nfs on a 2-CPU system with
> the sources pre-cached on the server and objects on a local file system,
> and extensive local tuning of makeworld, nfs and network drivers.  I
> think the tuning in ULE was mainly for a 2-CPU system, because makeworld
> seemed to be very bad under ULE only with 2 CPUs.  Apparently, it is also
> very bad with more CPUs.  There are sysctls to modify the ULE tuning.

I found Kris' document here:


Which also mentions some ULE tuning. The sched_ule man page doesn't
mention what these are. Can someone point me to a document that
explains the sysctl tuning I can try?

I imagine I would want to tweak one or more of these:

kern.sched.preemption: 1
kern.sched.topology: 0
kern.sched.steal_thresh: 2
kern.sched.steal_idle: 1
kern.sched.steal_htt: 1
kern.sched.balance_interval: 133
kern.sched.balance: 1
kern.sched.tryself: 1
kern.sched.affinity: 3
kern.sched.pick_pri: 1
kern.sched.preempt_thresh: 64
kern.sched.interact: 30
kern.sched.slice: 13

But I'm not sure which to try. I did try setting kern.sched.pick_pri
to 0, but that hasn't helped the ffmpeg workload at least.


More information about the freebsd-performance mailing list