The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги | ]

08.04.2012 14:26  Представлена четвёртая версия планировщика задач SCHED_DEADLINE для ядра Linux

После почти полутора лет разработки представлена четвёртая версия планировщика задач SCHED_DEADLINE, реализующего алгоритм EDF (Earliest Deadline First), основанный на идее выбора для выполнения из очереди ожидающих процессов задачи, наиболее близкой к истечению крайнего расчётного времени (deadline). SCHED_DEADLINE поддерживает обеспечение работы процессов, требующих выполнения операций в режиме реального времени, предоставляя для подобных задач гарантированное время выполнения, независимо от общего количества обслуживаемых процессов, и реализуя возможность резервирования пропускной способности CPU для процессов.

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

Ключевым изменением нового выпуска SCHED_DEADLINE является обеспечение поддержки PREEMPT_RT ветки ядра Linux (3.2.13-rt23) c реализацией режима реального времени, которая используется в real-time редакциях промышленных Linux-дистрибутивов MontaVista, Red Hat и Novell. Несмотря на то, что патчи теперь базируются на ветке PREEMPT_RT, продолжается работа по продвижению разработки в состав основного ядра Linux. Параллельно поддерживается ветка SCHED_DEADLINE2 с патчами для основной ветки ядра Linux.

Кроме того, в новой версии SCHED_DEADLINE улучшен алгоритм выбора очередей выполнения (runqueue) для обеспечения динамической миграции задач на многопроцессорных системах. В частности, реализован эквивалент cpupri для задач, для которых выбран метод планирования deadline (cpudl). Из планов на будущее отмечается реализация средств управления пропускной способностью на основе cgroup. Вместо планирования на основе приоритета и предельного времени (deadline) рассматривается возможность оперирования пропускной способностью.

Дополнительно можно отметить публикацию результатов первого года работы тестовой инфраструктуры для оценки качества работы Linux при выполнении задач реального времени и для постоянного наблюдения за изменением характеристик RT-Linux при выполнении различных нагрузочных сценариев. Целью проекта является организация регулярных проверок новых Linux-ядер и RT-патчей в приближенных к реальным условиях и на широком спектре различных аппаратных платформ. В настоящее время тестовая инфраструктура включает в себя 50 различных аппаратных платформ. Работа тестовой фермы организована консорциумом OSADL (Open Source Automation Development Lab), развивающим решения на базе Linux для промышленной встраиваемой техники и курирующим разработку real-time патчей PREEMPT_RT к Linux ядру.

За год тестирования была накоплена информация о выполнении 73 миллиардов тестовых циклов. Все данные наглядно визуализированы в виде 3D-графиков. Использование логарифмической шкалы позволяет выделить в виде пика даже единичные изменения отзывчивости системы.



  1. Главная ссылка к новости (https://lkml.org/lkml/2012/4/6...)
  2. OpenNews: В ядро Linux может быть включен планировщик реального времени
  3. OpenNews: Третья версия планировщика задач SCHED_DEADLINE для ядра Linux
  4. OpenNews: Для Linux представлен планировщик задач BLD (Barbershop Load Distribution)
  5. OpenNews: Консорциум OSADL представил ферму для тестирования RT-Linux на различном оборудовании
  6. OpenNews: Представлен первый тестовый набор RT-патчей для ядра Linux 3.0
Лицензия: CC-BY
Тип: Программы
Ключевые слова: sched_deadline, sheduler, linux, realtime
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.1, Аноним (-), 16:20, 08/04/2012 [ответить] [показать ветку] [···]    [к модератору]
  • –6 +/
    Новость не читал, скажите сразу - лучше BFS или нет?
     
     
  • 2.2, pavlinux (ok), 16:23, 08/04/2012 [^] [ответить]    [к модератору]
  • –7 +/
    BFS - уже говно, не, конечно если у тя Pentium II 433, то пойдёт.
     
     
  • 3.31, loper (ok), 22:43, 08/04/2012 [^] [ответить]    [к модератору]
  • +8 +/
    Комменты не читал, но первые два понравились)
     
  • 2.16, Аноним (-), 18:01, 08/04/2012 [^] [ответить]    [к модератору]
  • +4 +/
    это не для чукчей, т.е. которые не читатели
     
  • 1.3, Аноним (-), 16:25, 08/04/2012 [ответить] [показать ветку] [···]    [к модератору]
  • +/
    А что сейчас тогда самое нормальное, на свежем железе?
     
     
  • 2.6, pavlinux (ok), 16:37, 08/04/2012 [^] [ответить]    [к модератору]  
  • +2 +/
    Дефолтный - CFS.
     
  • 1.4, fufufuu (?), 16:33, 08/04/2012 [ответить] [показать ветку] [···]     [к модератору]  
  • –4 +/
    как такое вообще возможно кто может сказать сколько будет выполняться та или ин... весь текст скрыт [показать]
     
     
  • 2.9, pavlinux (ok), 17:09, 08/04/2012 [^] [ответить]     [к модератору]  
  • +2 +/
    По этому он и называется DEADLINE И вообще, тут неправильно перевели, не задач... весь текст скрыт [показать]
     
  • 2.11, Аноним (-), 17:16, 08/04/2012 [^] [ответить]     [к модератору]  
  • +/
    Ну да, щазззз Собственно задача шедулера в том и состоит чтобы вовремя вклинить... весь текст скрыт [показать]
     
  • 2.24, umbr (ok), 19:19, 08/04/2012 [^] [ответить]    [к модератору]  
  • +1 +/
    Если время выполнения задачи "почти случайный процесс" - то реалтайм и рядом не стоял.
     
  • 1.5, pavlinux (ok), 16:36, 08/04/2012 [ответить] [показать ветку] [···]    [к модератору]  
  • +5 +/
    Можно чуток расстрою розовую новость!

    1. DEADLINE, как самостоятельный планировщик, туповат, надо руками выставлять приоритеты.  
    2. RT_PREEMPT ну ваще ни разу не HARD REALTIME
    3. Редкие, но запоры в латентности, бывают до 2000-3000 us, при среднем показателе 50-80 us
    4. Для полного реалтайм-кайфа, надо напрочь сносить всё управление питанием, от idle в процах до скринсейвера и DPMS монитора.

     
     
  • 2.7, Аноним (-), 17:00, 08/04/2012 [^] [ответить]     [к модератору]  
  • +3 +/
    Да, но учти что с течением времени количество ядер процессоров в системе и ее вы... весь текст скрыт [показать]
     
  • 2.12, Аноним (-), 17:25, 08/04/2012 [^] [ответить]    [к модератору]  
  • +6 +/
    > 2. RT_PREEMPT ну ваще ни разу не HARD REALTIME

    HARD REALTIME это всего лишь жесткие гарантии того что на некое событие будет отреагировано не более чем за X и ни при каких условиях не более чем. Чему этот X равен - отдельный вопрос :)

    > 3. Редкие, но запоры в латентности, бывают до 2000-3000 us, при среднем
    > показателе 50-80 us

    Ну загарантируй 4000us если ты уверен что за этот предел никогда не выскочит, получишь hard realtime хоть и слегонца эстонский :).

    > 4. Для полного реалтайм-кайфа, надо напрочь сносить всё управление питанием, от idle
    > в процах до скринсейвера и DPMS монитора.

    Если тебе надо предсказуемость до единиц микросекунд, x86 вообще бяка. Джиттер времени одной и той же операции на х86 будет мама не горюй, в зависимости от cache hit/cache miss, успеха предсказания бранчей и прочая. Оно такое ориентировано на "скорость молочения вообще" а не "предсказуемое время реакции". По второму параметру примитивное фирмваре на 1 кило в хилой 8-битной атмеге на ее скромных 10-20 МГц уделает x86 c диким отрывом.

     
     
  • 3.13, pavlinux (ok), 17:40, 08/04/2012 [^] [ответить]     [к модератору]  
  • +4 +/
    Хардкорные реалтаймы дают погрешность 5 как на резисторы с золотой полоской ... весь текст скрыт [показать]
     
     
  • 4.28, sasa (??), 21:03, 08/04/2012 [^] [ответить]     [к модератору]  
  • +1 +/
    Сразу видно - теоретик, не читал но осуждаю uname -srvo Linux 3 2 9-rt17 3... весь текст скрыт [показать]
     
     
  • 5.29, pavlinux (ok), 21:34, 08/04/2012 [^] [ответить]     [к модератору]  
  • +/
    Чёй-то говёненький рылтайм на ваши ARMах code cyclictest -t4 -p 99 -n -i 10... весь текст скрыт [показать]
     
     
  • 6.32, EuPhobos (ok), 00:34, 09/04/2012 [^] [ответить]     [к модератору]  
  • +/
    root megagamer home prot cyclictest -t4 -p99 -n -i10000 WARNING Most function... весь текст скрыт [показать]
     
     
  • 7.33, pavlinux (ok), 03:17, 09/04/2012 [^] [ответить]     [к модератору]  
  • +/
    А ты вот такую сетевушку, за 400 8364 , себе, задротам и провайдерам купи ht... весь текст скрыт [показать]
     
     
  • 8.49, Аноним (-), 20:28, 10/04/2012 [^] [ответить]     [к модератору]  
  • +/
    Тудыть, у меня такой пинг до мыла ру с самым паршивым реалтеком и какой-то ноней... весь текст скрыт [показать]
     
     
  • 9.50, pavlinux (ok), 20:35, 10/04/2012 [^] [ответить]     [к модератору]  
  • +/
    А у меня шлен 25 см Вот скриншот - http i35 fastpic ru big 2012 0410 ac f178... весь текст скрыт [показать]
     
  • 7.43, Аноним (-), 23:50, 09/04/2012 [^] [ответить]     [к модератору]  
  • +1 +/
    Дядь, микросекунды на фоне даже 1 мс пинга не роялят Пусть задроты проверяют св... весь текст скрыт [показать]
     
  • 6.46, sasa (??), 05:27, 10/04/2012 [^] [ответить]     [к модератору]  
  • +/
    Ну так и есть - теоретик, это вообще никого кроме тебя не волнует тут главное... весь текст скрыт [показать]
     
  • 4.34, Аноним (-), 04:19, 09/04/2012 [^] [ответить]     [к модератору]  
  • +1 +/
    Хардкорные реалтаймы могут быть и буквально по тактам проца вычислены для просты... весь текст скрыт [показать]
     
     
  • 5.41, pavlinux (ok), 16:06, 09/04/2012 [^] [ответить]     [к модератору]  
  • +/
    Железка корявая, Atom D425 и сетевуха Реалтык 8169 c фирмварью , как трафик на... весь текст скрыт [показать]
     
  • 3.17, антоним (?), 18:07, 08/04/2012 [^] [ответить]     [к модератору]  
  • +2 +/
    ври, но не завирайся сравни размер кэша с размером раб памяти атмеги, переведи ... весь текст скрыт [показать]
     
     
  • 4.22, pavlinux (ok), 19:17, 08/04/2012 [^] [ответить]     [к модератору]  
  • +5 +/
    Мужики, давайте всё ж рассматривать RT как программно-аппаратную пару А то 4-яд... весь текст скрыт [показать]
     
  • 4.35, Аноним (-), 04:45, 09/04/2012 [^] [ответить]     [к модератору]  
  • +2 +/
    У атмеги джиттер зачастую равен _нулю_ - все априори известно потактово, так что... весь текст скрыт [показать]
     
     
  • 5.36, антоним (?), 13:05, 09/04/2012 [^] [ответить]     [к модератору]  
  • –2 +/
    Во первых, ровно то же самое известно и для чипов х86 И то что в атмеге деклари... весь текст скрыт [показать]
     
     
  • 6.39, антоним (?), 15:41, 09/04/2012 [^] [ответить]     [к модератору]  
  • +/
    Я, в принципе, к тому, что если не использовать навороты современных х86 и добав... весь текст скрыт [показать]
     
  • 6.40, pavlinux (ok), 15:58, 09/04/2012 [^] [ответить]    [к модератору]  
  • +1 +/
    > без каких либо биоса и прочих финтифлюшек?

    Сoreboot!

     
  • 6.44, Аноним (-), 02:16, 10/04/2012 [^] [ответить]     [к модератору]  
  • +2 +/
    Оно никогда не известно с какой либо точностью, т к нет никаких _гарантий_ попа... весь текст скрыт [показать]
     
  • 5.38, Ваня (??), 13:43, 09/04/2012 [^] [ответить]    [к модератору]  
  • –2 +/
    Для SMI можно указать максимальное время выполнения обработчика, в т.ч. равное "0". Только делать этого без нужды не рекомендуется.
     
     
  • 6.45, Аноним (-), 02:22, 10/04/2012 [^] [ответить]     [к модератору]  
  • +/
    Если фирмварез в SMI зажмет управление себе - фиг с два ты его получишь назад в ... весь текст скрыт [показать]
     
     
  • 7.48, Ваня (??), 14:51, 10/04/2012 [^] [ответить]    [к модератору]  
  • +/
    Откройте для себя значение термина "СПЕЦИФИКАЦИЯ" и многое в этом мире станет понятнее.
     
     
  • 8.51, Аноним (-), 20:38, 10/04/2012 [^] [ответить]     [к модератору]  
  • +/
    Открой мне плиз где можно скачать спецификации на обработчик SMI в award ami ... весь текст скрыт [показать]
     
  • 5.47, sasa (??), 05:36, 10/04/2012 [^] [ответить]    [к модератору]  
  • +/
    > У атмеги джиттер зачастую равен _нулю_ - все априори известно потактово

    вранье - все зависит от того какая команда исполняется во время прерывания, они там не все за один такт выполняются, так что на avr это невозможно впринципе.

     
     
  • 6.52, Аноним (-), 20:41, 10/04/2012 [^] [ответить]     [к модератору]  
  • +/
    Хинт можно еще и через поллинг работать, например При этом мы можем _наверняка... весь текст скрыт [показать]
     
  • 2.21, umbr (ok), 19:17, 08/04/2012 [^] [ответить]    [к модератору]  
  • +/
    А ещё оперативку статическую и никакого свопа.. Кстати, на тестируемых системах своп включен?
     
  • 1.8, Ivan (??), 17:01, 08/04/2012 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    Оффтопик, но всё же: в чём и как такие няшные графички строить?
     
     
  • 2.10, pavlinux (ok), 17:10, 08/04/2012 [^] [ответить]    [к модератору]  
  • –2 +/
    > Оффтопик, но всё же: в чём и как такие няшные графички строить?

    Тут -  http://www.gnuplot.info

    НЯШКА - это сокращено от ГОВ... или ВКУС... ?

     
     
  • 3.25, Зенитар (?), 19:34, 08/04/2012 [^] [ответить]    [к модератору]  
  • –1 +/
    Это удлинненние слова "Ня", которое любят российские анимешники.
     
  • 2.20, skb7 (ok), 19:07, 08/04/2012 [^] [ответить]    [к модератору]  
  • +2 +/
    Gnuplot наверное. Тут список: http://en.wikipedia.org/wiki/List_of_graphing_software
    Можно еще какими-то пакетами в LaTeX-е рисовать.

    Но ИМХО проще использовать бек-енды типа Gnuplot через Maxima или "R":
    http://www.inp.nsk.su/~baldin/DataAnalysis/index.html
    http://riotorto.users.sourceforge.net/gnuplot/index.html
    http://maxima.sourceforge.net/ru/documentation.html (а именно http://maxima.sourceforge.net/ru/maxima-tarnavsky-5.html)

    Еще есть MathGL и UDAV:
    http://udav.sourceforge.net/

    Если интересует конкретный инструмент, которым рисовали в этой статье -- это неплохие ссылки чтобы начать поиск

     
     
  • 3.26, Ivan (??), 19:37, 08/04/2012 [^] [ответить]    [к модератору]  
  • +/
    Спасибо!
     
  • 3.30, Vkni (ok), 21:55, 08/04/2012 [^] [ответить]    [к модератору]  
  • +1 +/
    > Gnuplot наверное. Тут список: http://en.wikipedia.org/wiki/List_of_graphing_software
    > Можно еще какими-то пакетами в LaTeX-е рисовать.

    Пакеты называются tikz и pgf (это связка). Выдают великолепную графику - http://www.texample.net/tikz/examples/

    Ну и к ним как-то привинчен ещё через какой-то пакет построитель графиков. Самое главное же - это родное встраивание в TeX.

     
  • 1.14, антоним (?), 17:48, 08/04/2012 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Ну вот, опять - графики демонстрирующие зависимость непонятно чего от хз. Автор - если ты уж решил, что эти графики наглядно тебе чего-то продемонстрировали и ты решил их вставить в текст новости, будь добр, потрать еще десяток секунд - напиши к ним подпись, объясни и остальным. А то толку от графиков практически ноль.
     
     
  • 2.15, антоним (?), 17:53, 08/04/2012 [^] [ответить]    [к модератору]  
  • +/
    Второй еще можно как-то понять (распределение времени отклика по прогонам), но первый прямо таки необходимо подписать.
     
  • 1.37, Аноним (-), 13:08, 09/04/2012 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Вот это deadline счедулер, а не BFS, как некоторые доказывают!!!
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2018 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor