SCHED_ULE(4)
π SCHED_ULE β the ULE scheduler, bestie edition π
ok so you're in the Kernel Interfaces Manual and we're talking about SCHED_ULE(4) β the scheduler that runs the whole show. sit down, hydrate, let's go π«Ά
β¨ NAME β¨
sched_ule β the ULE scheduler. that's it, that's the name, and it's iconic π
β¨ SYNOPSIS β¨
options SCHED_ULE
literally one line. put it in your kernel config and you're done, no cap β¨
β¨ DESCRIPTION β¨
okay so the sched_ule scheduler is giving advanced scheduler features that sched_4bsd(4) β the traditional system scheduler β simply does not have. it's not a competition butβ¦ it kind of is π these features are all about SMP and interactivity, and they include:
- Thread CPU affinity. π§΅
- CPU topology awareness, including for hyper-threading. yes it knows your cores are siblings, it's not weird about it π¦
- Per-CPU run queues. everybody gets their own line, no pushing πΈ
- Interactivity heuristics that detect interactive applications and schedule them preferentially under high load. the scheduler is basically a bouncer who recognizes the VIPs π
π the sysctls that matter π
these are the sysctls relevant to how sched_ule operates. learn them, love them, they're your besties now:
kern.sched.nameβ this one is read-only and it reports the name of the active scheduler. it just tells you who's on aux, it does not take requests πkern.sched.quantumβ this one is read-write and it reports or sets the length of the quantum (in micro-seconds) granted to a thread. so you can peek, or you can change it. main character behaviour fr fr β
β¨ SEE ALSO β¨
go read them, they're part of the lore π
β¨ HISTORY β¨
the sched_ule scheduler first appeared in FreeBSD 5.1. vintage but make it fast πβ¨
β¨ AUTHORS β¨
Jeff Roberson <jeff@FreeBSD.org> β thank you for your service king π«Άπ
ok that's the whole page bestie, you're officially educated. go schedule something π
Debian β August 10, 2012 β SCHED_ULE(4) π and that's the vibe check, we're done here, periodt π π
π¦ where this page comes from
- debian bookworm: freebsd-manpages 12.2-1 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- debian trixie: freebsd-manpages 12.2-2 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- ubuntu jammy: freebsd-manpages 12.2-1 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- ubuntu noble: freebsd-manpages 12.2-1 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- ubuntu questing: freebsd-manpages 12.2-2
- ubuntu resolute: freebsd-manpages 12.2-2build1 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- ubuntu stonking: freebsd-manpages 12.2-2build1 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- Copyright (c) 2005 Robert N. M. Watson
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms