Skip to content


BFQ scheduler: быстро и стабильно.

На днях наткнулся на описание нового планировщика для ядра Linux — BFQ scheduler.

Планировщик BFQ (Budget Fair Queueing I/O Scheduler) создан как замена CFQ (и основан на его коде), основная мысль — более честное разделение I\O между процессами.

Он существует пока в beta-варианте и в официальную поставку ядра не включен. Однако, патч вполне стабилен и  лично у меня никаких проблем не вызвал.

Работает планировщик отлично — тормоза GUI во время активной работы с диском фоновых процессов (например, загрузки виртуальной машины или обновления дерева portage) просто как рукой сняло.

Патчи можно взять  здесь. Последняя поддерживаемая версия ядра — 2.6.30 (на beta-ядрах не работает, можно не тратить время).

Под катом — патчинг и установка для тех, кому интересно.

  1. Скачиваем патчи с http://feanor.sssup.it/~fabio/linux/bfq/patches/
  2. Переходим в /usr/src/linux
  3. Патчим: patch -p1 /path/to/patch. Патчить последовательно, с 00 до 02. Все патчи обязательны.
  4. make menuconfig
  5. В разделе Block layer -> I\O schedulers ставим BFQ=m, сохраняемся, выходим.
  6. make modules
  7. make modules_install
  8. modprobe bfq-iosched
  9. Проверяем, загрузился ли модуль: cat /sys/block/<HDD>/queue/scheduler, должно быт  что-то вроде no-op [cfq] bfq
  10. Включаем: echo «bfq» > /sys/block/<HDD>/queue/scheduler
  11. Снова проверяем, изменился ли планировщик.
  12. Радуемся увеличению производительности.

Posted in Без рубрики.

Tagged with , , , , .


3 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.

  1. Валера says

    чёт инфы мало по планировщику

Continuing the Discussion

  1. Эдмунд Бёрк linked to this post on 21.04.2010

    Чтобы обладать свободой, необходимо ее ограничивать.

  2. Публий Овидий Назон linked to this post on 30.04.2010

    Подчас болезнь оказывается сильнее медицины.



Some HTML is OK

or, reply to this post via trackback.