LINUX.ORG.RU

Результаты тестирования планировщика задач BFS

 , , ,


0

0

Представлены результаты измерения производительности планировщика задач BFS, нацеленного на увеличение отзывчивости системы.

  • В 2 тестах (World of Padman, сборка PHP) производительность BFS и CFS была на одном уровне.
  • В 3 тестах (сборка apache, GraphicsMagick, PostMark) немного быстрее оказался BFS.
  • В 2 тестах (7-Zip, чтение Threaded I/O Tester) с небольшим отрывом победил CFS.
  • В тесте на скорость обработки запросов в http-сервере Apache, BFS обогнал CFS на 65%, но CFS отыгрался в тесте на скорость записи данных (Threaded I/O Tester), выполнив его быстрее на 30%.

Source opennet.ru

Т.о. получается, что CFS не идеальный планировщик, и, как говорил Кон Коливас, в особенности на задачах компиляции, BFS более полно использует возможности системы.

>>> Подробности

Ответ на: комментарий от Robotron

Дурака включил ты с самого начала, после того, как не понял смысла простого предложения.

>обосрался


Иди в сад.

madcore ★★★★★
()
Ответ на: комментарий от madcore

>Дурака включил ты с самого начала, после того, как не понял смысла простого предложения.

ты сам его понять не можешь, говоря о том, что ticks позволяет экономить энергию, лишний раз не генерировать прерывания таймера и не сказывается на отзывчивости ты говоришь ticks=on. Иди читай документацию, всё это происходит только при ВКЛЮЧЁННОМ ticks.

Robotron
()
Ответ на: комментарий от Robotron

>говоря о том, что ticks позволяет экономить энергию, лишний раз не генерировать прерывания таймера

Да.

>и не сказывается на отзывчивости


Нет.



madcore ★★★★★
()
Ответ на: комментарий от madcore

>>и не сказывается на отзывчивости

>Нет.

опять дурака включаешь. На отзывчивости ticks=on сказывается отрицательно.

Robotron
()
Ответ на: комментарий от Robotron

Ты утомил. Где я сказал, что включение tickless не сказывается или сказывается положительно на отзывчивости?

madcore ★★★★★
()
Ответ на: комментарий от anonymous

>На хабре читал обратное: tickless=n, 1000Hz для bfs. Где правда?

Оптимально может быть и да, но у меня собрано именно так как я описал, хотя по идее твой вариант в плане отзывчивости лучше - я предполагаю что разница в пределах погрешности. Тоже интересная тема, позже сравню.

aix27249
()
Ответ на: комментарий от madcore

>Ты утомил. Где я сказал, что включение tickless не сказывается или сказывается положительно на отзывчивости?

У тебя раздвоение личности?

Вот здесь ты говоришь, что dynamic ticks не сказывается на отзывчивости:

>tickless позволяет не генерировать лишний раз прерывания таймера. На отзывчивости это положительно не скажется, а на мобильных устройствах предпологает некоторую экономию потребления на выходах цпу из спячки.

Robotron
()
Ответ на: комментарий от aix27249

Нет, зависает именно процесс /usr/sbin/python emerge ... (вроде так)

Причем, если послать ему с другой консоли SIGKILL или SIGTERM, то ничего не происходит. Да и ест он 0% процессора.

tis ★★
()
Ответ на: комментарий от Robotron

>Вот здесь ты говоришь, что dynamic ticks не сказывается на отзывчивости:

Жжож, но толсто.

>>tickless позволяет не генерировать лишний раз прерывания таймера. На отзывчивости это положительно не скажется, а на мобильных устройствах предпологает некоторую экономию потребления на выходах цпу из спячки.

madcore ★★★★★
()
Ответ на: комментарий от atrus

>Если не в падлу, попробуйте сравнить ещё раз CFS и CFS с io-шедуллером anticipatory. Понимаю, что звучит бредово, но когда-то аналогичное безобразие вылечило именно замена io-шедуллера. Хочется знать, эффект по прежнему в силе? Просто проверять имеет смысл на одном железе и если вы уже сравнивали CFS и BFS...

Попробовал, в данном контексте заметной разницы нет, по крайней мере мне не удалось её уловить. Может потому что хард быстрый...

aix27249
()
Ответ на: комментарий от Robotron

Вмешаюсь в эту заумную дискуссию.

"На отзывчивости положительно не скажется" = "либо не скажется вообще, либо скажется строго отрицательно". Это если чисто логически мыслить. А если обратить внимание то большинство людей говорят "это не будет иметь положительного эффекта" имя в виду, что эффект будет отрицательным.

eugene2k
()
Ответ на: комментарий от eugene2k

>"На отзывчивости положительно не скажется" = "либо не скажется вообще, либо скажется строго отрицательно".

Я начал подозревать, что он пытается приписать мне оборот речи, когда "положительно" употребляется как "определенно"

madcore ★★★★★
()

Марку надо Коливаса к себе в конторку.

zf8
()
Ответ на: комментарий от madcore

>Жжож, но толсто.

мужества не хватает признать, что обосрался?

>>"На отзывчивости положительно не скажется" = "либо не скажется вообще, либо скажется строго отрицательно".

>Я начал подозревать, что он пытается приписать мне оборот речи, когда "положительно" употребляется как "определенно"

про скажется отрицательно это мои слова, ты же утверждаешь, что НЕ скажется отрицательно.

ты можешь подозревать всё что угодно, со своей паранойей.

Robotron
()

Результаты пахнут желтизной. Я считал, что BFS должен повышать отзывчивость системы. А тут прямо увеличение производительности Apache более чем в половину.

Даже если оно нестабильно, но показывает такие результаты, Молнару стоит внимательно почитать как работает BFS и отчего возникает такая разница.

skwish ★★
()
Ответ на: комментарий от madcore

поешь говна лучше, так от тебя будет больше пользы:

- не будешь на уважаемом форуме чушь писать

- куском говна в мире станет меньше.

Robotron
()

Граждане...
Раз все такие спецы в тестировании, что размазали столько соплей по треду, составьте, кому не трудно, правильный тесткейс для десктопненьких машин.
Планируется потестировать поведение 2.6.31(bfs+bfq+ext4+300Hz) на одно- (celeron D) и двухядерниках (Core 2 Duo).

Lumi ★★★★★
()
Ответ на: комментарий от skwish

>Молнару стоит внимательно почитать как работает BFS и отчего возникает такая разница.

Кон разобрался, как работает CFS и сделал наоборот, если кто подзабыл :)

frame ★★★
()
Ответ на: комментарий от Lumi

>кому не трудно, правильный тесткейс для десктопненьких машин.

Тебе на www.opennet.ru, там не далее, как дней пять назад некто vitek грозился самым решительным образом написать тесткейсы для ядра.

Robotron
()
Ответ на: комментарий от Robotron

Что-то я даже не соображу по каким ключевым словам искать. Vitek выдаёт гору мусора. Возможно решительность за пять дней рассосалась.

Lumi ★★★★★
()
Ответ на: комментарий от frame

>> Молнару стоит внимательно почитать как работает BFS и отчего возникает такая разница.

> Кон разобрался, как работает CFS и сделал наоборот, если кто подзабыл :)

Еще не факт, что разобрался. Я уже говорил почему считаю результаты сомнительными.

skwish ★★
()
Ответ на: комментарий от Lumi

> по каким ключевым словам искать. Vitek выдаёт гору мусора.

Из-за этих слов покончило с собой 2 pr-менеджера Vitek и зам. начальника отдела контроля качества убился о стенку.

skwish ★★
()
Ответ на: комментарий от Lumi

>Что-то я даже не соображу по каким ключевым словам искать. Vitek выдаёт гору мусора. Возможно решительность за пять дней рассосалась.

Спросите у него напрямую, что может быть проще. Vitek и примкнувший к нему pavel_simple собирались писать. Это было в треде про BFS

http://www.opennet.ru/opennews/art.shtml?num=23313

Robotron
()
Ответ на: комментарий от Robotron

Спасибо. Как много текста, однако. :)

Lumi ★★★★★
()

Пропатчил под BFS ядро 2.6.31-rc9. Двухъядерная система стала значительно шустрее. Конф: PREMPT + 1000Hz

exst ★★★★
()
Ответ на: комментарий от ixrws

>Да просто коливас не дурак, и зря ему не давали ходу.

Ему не просто не дали хода, а сделали практически тоже самое и протолкнули свое. Причем делали люди которые отказывали ему в принятии его кода и идей, а потом в своей обвертке подали практически тоже самое.

Buy ★★★★★
()
Ответ на: комментарий от Buy

Не вводите людей в заблуждение! Единственной идеей Коливаса, которую Молнар принял была идея о fairness -- мере справедливости распределения времени CPU

annoynimous ★★★★★
()
Ответ на: комментарий от tis

На работе ленни, дома джента. А какая собственно разница? Могу любой поставить.

Lumi ★★★★★
()

> производительности планировщика задач BFS
> сборка PHP

> сборка apache

> скорость обработки запросов в http-сервере Apache


Разве BFS писался не для повышения отзывчивости пользовательских систем? :)
Или я не правильно представлял себе будни пользователей тукса или кто-то придумал черезвычайно хреновый тесткейс...

FHunter
()
Ответ на: комментарий от FHunter

>Разве BFS писался не для повышения отзывчивости пользовательских систем? :)

Для повышения отзывчивости системы и полного использования системных ресурсов виде полной загрузки ядер при равном им количестве заданий.

У CFS полная загрузка, ввиду неудачной реализации сервера распределения ресурсов, происходит только при количестве заданий больше количества ядер минимум раза в два.

Robotron
()
Ответ на: комментарий от aix27249

> Попробовал, в данном контексте заметной разницы нет, по крайней мере мне не удалось её уловить.

Понятно, спасибо.

atrus ★★★★★
()
Ответ на: комментарий от Robotron

>Спросите у него напрямую, что может быть проще. Vitek и примкнувший к нему pavel_simple собирались писать. Это было в треде про BFS

Да нет. Там кое-кто обделался с графиком нагрузки на CPU.

anonymous
()
Ответ на: комментарий от Robotron

> Спросите у него напрямую, что может быть проще.
Не, не буду у него спрашивать. Он грубый и невоспитанный человек. (с) @

Lumi ★★★★★
()
Ответ на: комментарий от Robotron

>>Разве BFS писался не для повышения отзывчивости пользовательских систем? :)

> Для повышения отзывчивости системы и полного использования системных ресурсов виде полной загрузки ядер при равном им количестве заданий.

Понятно, что главная цель любого планировщика - "полное использование системных ресурсов". Вопрос про количество задач на количество ядер меня, как пользователя мало волнует. Но зато для меня, как пользователя десктопа, волнует, например, флэш на весь экран. Одна задача, два ядра :)
Я речь вел о применимости планировщиков по признаку десктоп/сервер/суперкомпьютер.

Потому что согласно тексту новости:
http://www.linux.org.ru/view-message.jsp?msgid=4008360&lastmod=1252500908412

CFS "ориентирован на суперкомпьютеры", в то время как "BFS ориентирован на десктоп"

Согласно тексту текущей новости
> производительности планировщика задач BFS

проверялась на тестах, в том числе:
> сборка PHP

> сборка apache

> скорость обработки запросов в http-сервере Apache


Эти тесты выглядят несколько странно... так сказать не из области применимости планировщика направленного на десктопы.

У меня вертится фраза "забивать гвозди микроскопом", которая как мне кажется хорошо описывает данный тесткейс.

FHunter
()
Ответ на: комментарий от Robotron

>У CFS полная загрузка, ввиду неудачной реализации сервера распределения ресурсов, происходит только при количестве заданий больше количества ядер минимум раза в два.

main(){

for (int i;;)

i++;

}

загрузка 1-го CPU (и только одного, что правильно) - 100% .

соответственно, при запуске 2-а раза на 2-х-ядерники оба проца по 100%.

anonymous
()
Ответ на: комментарий от skwish

skwish> Даже если оно нестабильно, но показывает такие результаты, Молнару стоит внимательно почитать как работает BFS и отчего возникает такая разница.

Молнар просто непробиваемо туп и вообще по жизни упырок - будет стоять на своём, пихая тормоза в линукс.

Quasar ★★★★★
()

Собрал 2.6.31 + bfs, с опциями, рекомендованными в faq - никакого прироста производительности по сравнению с 2.6.30.5 не заметил. Athlon 64 X2.

skvitek ★★★
()
Ответ на: комментарий от skvitek

> Собрал 2.6.31 + bfs, с опциями, рекомендованными в faq - никакого прироста производительности по сравнению с 2.6.30.5 не заметил. Athlon 64 X2.

Сочувствую.

exst ★★★★
()
Ответ на: комментарий от Quasar

>Молнар просто непробиваемо туп

Тупее только пробиваемые.

anonymous
()

2.6.31+bfs очень даже не плохо себя показал у меня на ноуте (Pentium M 1600Mgz). Гораздо лучше, чем старый планировщик, который "не замечал" nice задачи. Особенно заметно на просмотре кино с фоновой компиляцией.

dimonb
()
Ответ на: комментарий от Quasar

Толсто. Я не говорю что железо в маке прямо прелесть, но толсто все-же, Уважаемый!

anonymous
()

Я попробовал, использовать ядро с патчем BFS
Всё хорошо пока не приходится работь с внешними устройствами, при дефиците ЦПУ

Например скан получается только 1/5 страницы, дальше всё размазано, при возврате стандартного убунтовского ядра проблема исчезла

те как я понял BFS задушил драйвер оборудования и нормальная работа была нарушена.

opeg
()
Ответ на: комментарий от skvitek

Более того, теперь rune, запускаясь, показывает только чёрный экран а дрова nvidia встали только с третьей попытки.

skvitek ★★★
()

Тесты говно, тот кто их делал не понял зачем BFS - очевидно производительность будет ниже, цель BFS - быстрая реакция системы на действия юзера, система не должна тормозить из прожорливого процесса, а компиляция пусть на 5 минут дольше делается, это не так часто нужно Короче всем читать Коливаса http://habrahabr.ru/blogs/htranslations/69622/

worldmind
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.