-
CONFIG_SCHED_SCALABLE
¶
Red/black tree ready queue
Type: bool
Help¶
When selected, the scheduler ready queue will be implemented as a red/black tree. This has rather slower constant-time insertion and removal overhead, and on most platforms (that are not otherwise using the rbtree somewhere) requires an extra ~2kb of code. But the resulting behavior will scale cleanly and quickly into the many thousands of threads. Use this on platforms where you may have many threads (very roughly: more than 20 or so) marked as runnable at a given time. Most applications don’t want this.
Direct dependencies¶
<choice SCHED_ALGORITHM: Scheduler priority queue algorithm>
(Includes any dependencies from if’s and menus.)
Kconfig definition¶
At kernel/Kconfig:215
Included via Kconfig:10
→ Kconfig.zephyr:25
Menu path: (top menu) → General Kernel Options → Scheduler priority queue algorithm
config SCHED_SCALABLE bool prompt "Red/black tree ready queue" if <choice SCHED_ALGORITHM: Scheduler priority queue algorithm> depends on <choice SCHED_ALGORITHM: Scheduler priority queue algorithm> help When selected, the scheduler ready queue will be implemented as a red/black tree. This has rather slower constant-time insertion and removal overhead, and on most platforms (that are not otherwise using the rbtree somewhere) requires an extra ~2kb of code. But the resulting behavior will scale cleanly and quickly into the many thousands of threads. Use this on platforms where you may have many threads (very roughly: more than 20 or so) marked as runnable at a given time. Most applications don't want this.
(Definitions include propagated dependencies, including from if’s and menus.)