LINUX.ORG.RU

Новый CPU планировщик от доктора Kolivas-а


0

0

На днях в lkm Con Kolivas анонсировал новый CPU планировщик (cpu scheduler) для Linux. Этот планировщик, названный Rotating Staircase DeadLine интересен прежде всего тем, что он не предлагает никакой специальной обработки для интерактивных (или так называемых ориентированных на ввод/вывод [I/O bound] ) процессов, "There is no interactivity estimator, no sleep/run measurements and only simple fixed accounting", а является полностью "беспристрастным" (strict fairness), планировщиком с "честным" распределением CPU. Новый планировщик (scheduler) уже вызвал очень хорошие отзывы:
http://marc.theaimsgroup.com/?l=linux...
http://marc.theaimsgroup.com/?l=linux...

И даже показал заметное улучшение в масштабируемости MySQL на Linux на SMP.
http://marc.theaimsgroup.com/?l=linux...



Проверено: Shaman007 ()

у нас во FreeBSD их уже 3 (7-CURRENT) штуки, а который десяток (включая неоф. патчи) у вас мне не известно:)) вообщем, полный 'scheduler++;', ггг.

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

> я так понимаю, его можно рассматривать как альтернативу deadline, но не CFQ?

Похоже, вы не въехали. Это планировщик переключения процессов, а не планировщик операций I/O.

Надо попробовать эту штуку с Wine + DirectSound - может что путное выйдет.

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

>> я так понимаю, его можно рассматривать как альтернативу deadline, но не CFQ?

да, на здоровье! также можешь рассматривать ёнг как альтернативу пальцу %)

anonymous
()

а вообще есть у ck шедюлеры для десктопа? которые бы более подошли для десктопа чем cfq

prizident ★★★★★
()

Вот был когда-то KSI Linux, который играл mp3 не заикаясь параллельно со сборкой ядра на Pentium 100. Там наверное тоже было не все чисто с планировщиком.

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

>Design description ================== RSDL works off the principle of providing each task a quota of runtime that it is allowed to run at each priority level equal to its static priority (ie. its nice level) and every priority below that. When each task is queued, the cpu that it is queued onto also keeps a record of that quota. If the task uses up its quota it is decremented one priority level. Also, if the cpu notices a quota full has been used for that priority level, it pushes everything remaining at that priority level to the next lowest priority level. Once every runtime quota has been consumed of every priority level, a task is queued on the "expired" array. When no other tasks exist with quota, the expired array is activated and fresh quotas are handed out. This is all done in O(1).

[:]///////[:]

Немного по теме http://www.oreilly.com/catalog/linuxkernel/chapter/ch10.html

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

>которые бы более подошли для десктопа чем cfq

для десктопа подойдет _любой_ ;)

[на_правах_оффтопа] чем cfq не угодил? [/на_правах_оффтопа}

anonymous
()

PLEASE,

s/безпристрастным/беспристрастным/

s/масштабирумости/масштабируемости/

Народ!!! Ставьте FF >= 2.0 со словарями.

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

Кроме баяна, как я понял, еще кванты измельчили. Ну да, для домашнего компутера это наверное будет приятно.. У меня и к старому шедулёру притензий нету. =\ Лучше шедулеров разных и всяких %). Одобряю. Можно патчить на пробу. =)

anonymous
()

Год назад, наслушавшись хвалебных отзывов, попробовал sys-kernel/ck-sources. Получил заметные тормоза на десктопе. Может, чего-то недопилил там, но в итоге - снёс :)

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

Дедлайн объективно круче cfq, особенно на рейдах и вообще мало-мальски интеллектуальных железках. А на больших и многочисленных очередях, даже на десктопе, cfq тупо захлёбывается и получаем те же тормоза - вот и думай, что юзать.

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

> Дедлайн объективно круче cfq

Неправда. Давно уже неправда. CFQ нынче даже для баз данных подходит. А его особенность в ionice вообще полезна. Я так mplayer запускаю :)

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

> А что скажет товарищ Линус Бенедикт Торвальдс? :)

Уже сказал. Он говорит, что ему тоже не нравится interactivity estimator в текущем шедулере, и он может попробовать замёржить RSDL в момент перед выпуском -rc1 следующего ядра. По словам Торвальдса, это not a big fscking deal, поменять шедулер. И от проблем, если вдруг будут, никто особо не пострадает (это не VM и не IO), но шире протестируют.

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

> для десктопа не подойдёт, мышонкин курсор замирать будет :D

Много ли нужно мышонкину курсору? Утверждается, что с точностью до наоборот, при запуске скачивания почты kmail перестал заикаться mp3. У меня, при скачивании почты kmail, mplayer заикается, я так подозреваю от того, что постоянно запускается bogofilter на каждое письмо, а у него база уже огромная и в память не лезет.

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

Уже 3 года на десктопе использую ck, сперва в gentoo, теперь в ubuntu. Субъективно: работает быстрее гентушного и убунтовского.

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

> Год назад, наслушавшись хвалебных отзывов, попробовал sys-kernel/ck-sources. Получил заметные тормоза на десктопе. Может, чего-то недопилил там, но в итоге - снёс :)

Продуктивнее было бы пообщаться с самим доктором Коливасом :) Меня натурально просто ломало накатывать его патчи, так я ни разу и не попробовал. Кстати, касательно тормозов, один из источников -- видеодрайвера от radeon.

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

> Неправда. Давно уже неправда. CFQ нынче даже для баз данных подходит. А его особенность в ionice вообще полезна. Я так mplayer запускаю :)

Ну как сказать, у меня на ftp/nfs/smb отдающему по гигабиту файло во внешнюю домосетку с cfq iowait > 10%, а на дедлайне редко когда больше 2-3 в тех же условиях, и это при весьма и весьма многопоточной загрузке.

Что вижу - о том и пою ;)

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

>один из источников -- видеодрайвера от radeon.

Вот млин, а я думал это только у меня.. Когда поменял собственнические дрова на открытые, сразу же заметил значительное увеличение скорости (отзывчивости) в 2д.. =\

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

В том то и дело, планировщик (io) может иметь смысл подбирать под конкретные задачи и характер назгрузки. Для дома чего-либо крутить смысла нет.

bash-3.1$ cat /sys/block/hda/queue/scheduler
noop [anticipatory] deadline cfq

%)

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

>Тогда прошу прощения за неуместный вопрос :)

А, все, батенька, проштрафился.. У нас тут все ходы записаны.. %)

anonymous
()

И правда приятный планировщик для домашней станции. Пока без глюков, в отличие от предыдущих патчей от Con Kolivas.

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

>Он как всегда посылает всех лесом.

Может все таки будем читать тред ссылку на который приводим? Чел пытался пропихнуть некий код, который бы экспортировал некий API для написания шедулеров всем кому не лень. Что то типа FUSE по идеологии :) На что торвальдс резонно ответил, что шедулер это одна из самхы низкоуровневых фич ядра и что +- 10 циклов тут начинают играть значительную роль, плюс усомнился в том что такой API вообще можно создать более менее универсальным, ибо шедулерных алгоритмов может быть много и каждый со своими индивидуальными запросами к структурам.

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

> Ну как сказать, у меня на ftp/nfs/smb отдающему по гигабиту файло во внешнюю домосетку с cfq iowait > 10%, а на дедлайне редко когда больше 2-3 в тех же условиях, и это при весьма и весьма многопоточной загрузке.

Пой не так громко. Deadline хорош на нагрузках, в которых доминирует преимущественно чтение. Что ты, в общем-то и подтвердил.

annoynimous ★★★★★
()

Коливас - экспериментатор на мышках, блин. Как чего учудит - так хоть стой, хоть падай. Порастерял он народное доверие.

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

Если начать писать хотя бы в один поток с шустрого источника туда же - то система встаёт колом, отдача дико просаживается и запись тоже еле идёт. На хвалёном CFQ. И на многошпиндельном рейде. А на дедлайне - пишется медленней, зато чтение особенно и не страдает. Хотя один фиг, тут тестировать нужно подробней...

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

> Если начать писать хотя бы в один поток с шустрого источника туда же - то система встаёт колом, отдача дико просаживается и запись тоже еле идёт. На хвалёном CFQ. И на многошпиндельном рейде. А на дедлайне - пишется медленней, зато чтение особенно и не страдает. Хотя один фиг, тут тестировать нужно подробней...

а такое я тоже видел. хочу спросить: уж не сигейты ли в качестве шпинделей?

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

>у нас во FreeBSD их уже 3 (7-CURRENT) штуки, а который десяток (включая неоф. патчи) у вас мне не известно:)) вообщем, полный 'scheduler++;', ггг.

Планировщиков? У нас их четыре. А один из них смотрится у вас. И чего?

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

Да, ладно. Чё там. Проштрафился - ставь пузырь!

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

> Хмм.. что-то не внушает мне доверия этот планировщик..

вот и я о том же :)

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

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

Этот ужос никогда стоять на серверах не будет, да сгорит он в Аду и покроется мерзкой коростой отец-основатель этой предающейся пороку и разврату конторы. Вестерны там.

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

>шедулерных алгоритмов

Алгоритмов планирования. Русский когда уже "асилим"?

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

> Этот ужос никогда стоять на серверах не будет, да сгорит он в Аду и покроется мерзкой коростой отец-основатель этой предающейся пороку и разврату конторы. Вестерны там.

А, +1. Сечешь, парень :)

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

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

ХЗ, секу или нет - но десктопные сигейты дико сыпучи, уже через пару тысяч часов онлайна начинаются потуги что-то там ремапить похерившееся. Да и греются они страшно, разница в 7-10 градусов между гружённым вестерном и тихим сигейтом ужосает. А вообще - есть RE/RE2 серии у WD, что-то они там в фирмвари намутили, что и CFQ присутствует и в целом повеселее расклад на IOPS-задачках.

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

> Ну как сказать, у меня на ftp/nfs/smb отдающему по гигабиту файло во внешнюю домосетку с cfq iowait > 10%, а на дедлайне редко когда больше 2-3 в тех же условиях, и это при весьма и весьма многопоточной загрузке.

Я после смены ядра (не помню зачем) тоже обнаружил странную штуку с самбой, читающей с внешнего usb винта. Долго корячился с и/о шедулерами, читал доки на их параметры, чесал репу... Потом просто проапгрейдил самбу, и всё магически перестало тормозить. Сетка -- локалхост, vmware лазила к локальному линуксу. Для нагрузок типа ftp/nfs/smb, может deadline, а может даже anticipatory может получше и будут. В реальной работе, по тестам самого Oracle, CFQ уже достаточно хорош, на десктопе в общем тоже. После ядра 2.6.18, когда его сделали дефолтным, он условно "достаточно оттюнен".

Casus ★★★★★
()

>не предлагает никакой специальной обработки для интерактивных

а это ведь типа фича 2.6 ...

кстати а списочек планировщиков cpu для Линукс кто-нибудь кинуть может?

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