Jeff Roberson сообщил (http://lists.freebsd.org/pipermail/freebsd-current/2007-Janu...), что после нескольких месяцев работы над планировщиком ULE, теперь он готов к тестированию.Jeff отказался от механизма двойной очереди задач, используемой в ULE ранее, и заменил его в ULE 2.0. Новая версия планировщика уже включена в дерево исходных кодов и может быть испробована во FreeBSD 7.0 (CURRENT). По словам Jeff'а, теперь ULE работает стабильно, а так же стал значительно быстрее на однопроцессорных машинах (чем ранее). Он приводит пример своего теста: сборка ядра с опцией -j128, работа с браузером и одновременное проигрывание DVD проходит достаточно комфортно.
David Xu, ранее представивший новый планировщик SCHED_CORE, высказал (http://lists.freebsd.org/pipermail/freebsd-current/2007-Janu...) мнение по поводу ULE 2.0. Он считает, что нужно работать в другом направлении - в создании диспетчера процессоров, а не в улучшении алгоритма динамического изменения приоритетов. Так же, он заметил, что собирается отказаться от SCHED_CORE.
URL: http://lists.freebsd.org/pipermail/freebsd-current/2007-Janu...
Новость: http://www.opennet.me/opennews/art.shtml?num=9423
обрадовала новоть.
Да уж, у линукса их аж 3 + поддежрка приоритета i/o - просто все познаеться в сравнение - ,если верить Канту, - ребята шире мыслять, мне кажеться(субъективно)
- что фришка не улучшить позиции; результат лето 2007 - покажет, хотя не лето, а наверно конец осени - судя по работе. Все для меня не ясно чем взял Линукс - я его только для программрования использую, а так для администрирования - фришка
- линукс это салат - все есть и ipc всех разновидностей и новшества которые не идут в разрез с posix - не знай молодые ребята делаю, а фришку уже в возрасте - как у меня говорили в иссслд лаб - молодо да прытко,,,,,,
А SCHED_CORE ничего так, странно что David Xu хочет отказаться, ну если тока что то лучше придумал...
Он походу идеологично по-другому подходит к задаче планирования. Типа, планирование с точки зрения процессоров - распределение потоков между ними, привязки, объединение CPU в группы, объединение потоков в группы и планирование на этом уровне + обсчет динамических приоритетов. И он типа говорил что 4BSD/ULE - это всё чисто способы расчета динамических приоритетов, а не cpu dispatching, и это не должно быть основным направлением работы. В общем, посмотрим что скажут остальные - пока только Jeff + Xu говорили об этом =)
Пусть поучаться как сделано в винде
тюю. наверное я вас расстрою, но смотреть в сторону ms win в этом случае не стоит вообще. то есть не стоит в принципе.
Да ладно, вы смотрели планировщик в XP/2003(почти без изменений) винде (-> Соломон, Руссинович) и считаете, что это совсем пустая штука?Или вам не нравятся 32 уровня приоритетов?Аль еще чего?По описанию вполне себе неплохая вещь.
Проблема планировщиков Windows это ориентация на десктоп. Плюс в крайне агрессивном менеджере виртуальной памяти. Поэтому как только это чудо начинает считать что памяти нехватает, а процессов много Windows начинает заниматься i like it move it. Т.е. начинает гонять туда-сюда страницы из памяти на диск и т.п. хотя любой *nix при тех же условиях замечательно работает и не жужжит.
В небольшую защиту могу сказать, что в серверных версиях увеличивают счет, на который ведется вызов планировщика(не на каждый третий, а на каждый 18 - так чтоль). Резон - если крутится какой-нить MSSQL у больше нифига месяцами, то нефиг его интерраптить так часто.
>В небольшую защиту могу сказать, что в серверных версиях увеличивают счет, на
>который ведется вызов планировщика(не на каждый третий, а на каждый 18
>- так чтоль). Резон - если крутится какой-нить MSSQL у больше
>нифига месяцами, то нефиг его интерраптить так часто.Там производится удлинение квантов. В серверных задач конечно лучше более длинные кванты. Но от работы менеджера виртальной памяти это не спасает.
> По описанию вполне себе неплохая вещь.ИМХО - одно дело как написано (очень многие роман об отвлеченных вещах могут написать), а другое - как сделана эта самая реализация.
И она ведет себя, особенно под нагрузками.
А ведет она себя просто отвратительно .... когда оно заработает на нормальном уровне - добро пожаловать .. а так - в сад.
"Положительная обратная связь (ПОС) — тип обратной связи, при котором изменение выходного сигнала системы приводит к такому изменению входного сигнала, которое способствует дальнейшему отклонению выходного сигнала от первоначального значения.Положительная обратная связь ускоряет реакцию системы на изменение входного сигнала, поэтому её используют в определённых ситуациях, когда требуется быстрая реакция в ответ на изменение внешних параметров. В то же время положительная обратная связь приводит к неустойчивости."
не будем забывать, что черезмерно глубокая положительная обратная связь порождает самовозбуждение системы, при котором система становится бесполезной. Усилитель превращается в генератор.
Или эффект реверберации, что можно наблюдать в виндовсе ;-)
> Пусть поучаться как сделано в виндеНечему учиться у этого огромного куска дерьма...
Наиглупейшее ничем не обоснованное заявление
Наверное ты из детсада выбежал и не привык к конструктивному разговору?
Ну смотреть на винду здесь вообще не стоит... В линуксе планировщики себя ведут очень хорошо под большой нагрузкой... А в винде он под такой же нагрузкой дохнет...
В винде он представляет систему с обратными связями.
Из курса ТАУ известно, что коэффициенты в уравнениях этих систем нужно подбирать соответствующим образом. Есть обоснованные предположения, что в винде эти коэффициенты получились очень неудачными.
Странно, как в такой серьёзной конторе так плохо рассмотрели этот вопрос. Сам БГ забросил своё образование, возможно там много таких работает.
Насчет Венды, да, у нее учица нечему.. Самый хороший планировщик который я видел был у BeOS, но ее уже нету.. А вообще посмотрите исходники планировщика NewOS, мну кажеца что он даже лучше будет чем у Бе..
У тебя поучиться нужно, наверное, грамоте?
Транслитом? =)
Не смеши народ. В NewOS очень примитивный планировщик.
И кста в Лине действительно отличный пранировщик по сравнению с Вендой ->Тест: попробуйте одновременно открыть несколько видео проигрывателей (один и тот же видео файл, avi формат подойдет и кста выключите звук при проигрывании видео)..
У мну - 400mhz, 128 video ->
linux(mplayer+gui(скомпилированный на этой машине))-> 8 одновременно на 9-ом начинает тормозить
winxp pro sp2 rus(mplayer+gui(скомпилированный на этой машине))-> 3 одновременно на 4-ом тормоза
Просто ради интереса - а компилятор под виндой какой был? MinGW ( или Cygwin ) GCC?
В данной ситуации можно сказать, лишь о том, что порт MPlayer под виндовс получился не очень удачным, но не о том, что в виндовсе плохой планировщик ;-)
WinXP не рулит. Смотри 2003 Server...
Опять млять экспертов по планировщикам набралось...
На счет виндового (2000/XP) планировщика...
Попробуйте запустить увесестый запрос в собраном под винь MySQL, c дефолтным приоритетом (8 = normal) для mysqld-nt... Печальное зрелище. Винь при этом на обычной сейчас машине (K7 2100MHz 1GB RAM) одно окошко начинает отрисовывать порядка 15 секунд! В общем, на то чтобы прибить mysqld-nt у меня уходило порядка 3 минут (это чтобы запустить и отработать батник net stop mysql; раз пять экспериментировал) :-( Решением было понизить приоритет процесса мускула до 4 (idle). При этом "умный" виндовый диспетчер задач не позволял мне это cделать, мол, от другой учетной записи запущен процесс, хоть я был с правами админа. Пришлось воспользоваться ProcessExplorer'ом (еще и Far'ом можно) для понижения приоритета mysqld-nt (это так - лирическое отступление). Мой домашний роутер на древнем K6-2, при тех же условиях и без понижения приоритета мускула, без всяких затыков отрабатывал в mysql'евой консоли kill #ID;
Конечно, можно сказать, что MySQL (или любая другая прога) под винь коряво собран(ы), но как-то странно, что процесс с normal приоритетом можеь фактически "парализовать" работу системы...
Вот народ высказывается планировщики, где хуже, где лучше...В Линуксе тоже не всё окей...
Пример: 128Мб, 650МГц, запускаем NetBeans, FireFox... ни чего, дышат... открывем странички в FireFox, начинаем компиляцию в NetBeans и начинаются тормоза:
-несколько минут открытия терминала /dev/tty1
-несколько минут на набор рутового пользователя и пароля
- -//- запуска ps и убиения NetBeans...
>Пример: 128Мб, 650МГц, запускаем NetBeans, FireFox... ни чего, дышат... открывем странички в
>FireFox, начинаем компиляцию в NetBeans и начинаются тормоза:
>-несколько минут открытия терминала /dev/tty1
>-несколько минут на набор рутового пользователя и пароля
>- -//- запуска ps и убиения NetBeans...откройте для себя schedtool. Пускаете компиляцию с SCHED_BATCH и nice 20 и все ок.
Как и i/o scheduler должен быть cfq.
ЗЫ: а freebsd есть возможность на лету менять i/o schedulers для блочных устройств?
>Вот народ высказывается планировщики, где хуже, где лучше...
>
>В Линуксе тоже не всё окей...
>
>Пример: 128Мб, 650МГц, запускаем NetBeans, FireFox... ни чего, дышат... открывем странички в
>FireFox, начинаем компиляцию в NetBeans и начинаются тормоза:
>-несколько минут открытия терминала /dev/tty1
>-несколько минут на набор рутового пользователя и пароля
>- -//- запуска ps и убиения NetBeans...Просто добавьте памяти. NetBeans писан на java. А Java хавает очень неплохо памяти + FF который тоже неплохо хавает память. Если вы на этой же машине в Windows 2k или Windows XP просто откроете все это и будете пробовать переключаться с задачи на задачу у вас будет крайне весело гореть индикатор HDD и все будет дооолго думмать.
>Вот народ высказывается планировщики, где хуже, где лучше...
>
>В Линуксе тоже не всё окей...
>
>Пример: 128Мб, 650МГц, запускаем NetBeans, FireFox... ни чего, дышат... открывем странички в
>FireFox, начинаем компиляцию в NetBeans и начинаются тормоза:
>-несколько минут открытия терминала /dev/tty1
>-несколько минут на набор рутового пользователя и пароля
>- -//- запуска ps и убиения NetBeans...
дядя, а ты top смотрел? Там, случаем, не 99 iowait был?
- Папа. А правда что Windows многозадачная операционная система?
- Да сынок. Сейчас дискетку отформатирую и покажу.
>- Папа. А правда что Windows многозадачная операционная система?
>- Да сынок. Сейчас дискетку отформатирую и покажу.
Точно, или загловки почты по IMAP загружу ;)
>- Папа. А правда что Windows многозадачная операционная система?
>- Да сынок. Сейчас дискетку отформатирую и покажу.
это относилось к 95/98 винде в нт все изменилосьнасчет потокового стрима в часности видео - зависит не только от планировщика
Лучше бы планировщиком IO (Hybrid) плотнее занялись. А так мне вполне хватает 4BSD
Что ни говорите, а под тяжёлые задачи у Соляры лучше планировщик заточен, имхо. Вот один из примеров - http://www.trinity.msk.ru/news/280.htm
да, этот тест проводили отцы...
makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols
и что? включение дебага снижает быстродействие ядра? :))