Redox перешла на планировщик EEVDF: справедливость выросла в 782 раза
22.08.2026Акшит Гаур перевёл Redox с алгоритма DWRR на EEVDF — тот же подход, которым Linux заменил свой прежний планировщик CFS. По замерам автора, справедливость распределения времени улучшилась в 782 раза, переключение контекста ускорилось на 82%, пропускная способность выросла в 2,6 раза.
Суть замены
DWRR распределяет кванты времени пропорционально весу процесса. Проблема в том, что при большом числе задач с разными весами распределение становится несправедливым: процесс с малым весом может ждать непропорционально долго, и чтобы это смягчить, нужен набор эвристик — угадываний о природе задач по поведению. Именно такую сложность разработчики Linux считали проблемой своего прежнего планировщика.
EEVDF подходит иначе. Для каждой задачи считается отставание: насколько фактически полученное время меньше положенного по весу. Отставание положительное, если задача недополучила своё, отрицательное — если уже перебрала. Из отставания вычисляется момент, начиная с которого задача снова имеет право выполняться. Чем важнее задача, тем раньше этот момент наступает — поэтому высокоприоритетная работа не ждёт, а низкоприоритетная получает свою долю гарантированно, без эвристик.
Цифры
- справедливость — улучшение в 782 раза
- время переключения контекста — сокращение на 82%
- пропускная способность — рост в 2,6 раза
Почему Linux тоже пришёл к этому
Автор отдельно оговаривает, что не критикует Linux: там многие годы использовался куда более сложный CFS с теми же эвристиками, пока не разросся; переход на EEVDF состоялся уже после того, как подход доказал работоспособность. Redox пошёл тем же путём, но без промежуточной стадии сложного планировщика.
В работе участвовали Якоб Лоренцсон и Вильдан Мубарок; в августе Акшит дополнительно доработал механизм кражи работы и настроил систему приоритетов процесса.
Оригинал
RSoC 2026: EEVDF for Redox
Упоминаний: 1 · Просмотров: 6