:orphan: .. title:: CONFIG_SCHED_SCALABLE .. kconfig:: CONFIG_SCHED_SCALABLE CONFIG_SCHED_SCALABLE ##################### *Red/black tree ready queue* Type: ``bool`` Help ==== .. code-block:: none 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 =================== \ :ref:` ` *(Includes any dependencies from ifs and menus.)* Kconfig definition ================== At ``/Kconfig:228`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:40`` Menu path: (Top) → General Kernel Options → Scheduler priority queue algorithm .. code-block:: kconfig config SCHED_SCALABLE bool "Red/black tree ready queue" depends on 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. *(The 'depends on' condition includes propagated dependencies from ifs and menus.)*