LINUX.ORG.RU

Вышел ulatencyd — демон, контролирующий параметры отзывчивости системы

 , , ,


0

1

Daniel Poelzleithner представил демона, автоматически изменяющего параметры планировщика процессов, а также некоторых других вещей, отвечающих за отзывчивость системы.

Демон пока не готов для повседневного использования, но успешное начало уже положено. Так, например, при выполнении «make -j 40» на двухъядерной машине автор демона смог без проблем смотреть HD-фильм.

Архитектура демона выглядит так.

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

Над демоном ещё предстоит хорошо поработать, чтобы он вёл себя корректно при бесконечном своппинге или форк-бомбах, например. Также, хотя и была произведена оптимизация правил, написанных на Lua, нагрузка на демон при большом количестве порождаемых процессов всё ещё высока.

>>> Исходный код

★★★★★

Последнее исправление: post-factum (всего исправлений: 4)

попробовал

тест на memleak отожрал 4 гига из 4+3 доступных и всё оставалось ок. 6 гигов отожрать не смогло - навернулось.

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

Это не костыль, а правильный подход к решению проблемы. Упомянутый ранее патч на 200 строк — вот костыль.

post-factum ★★★★★
() автор топика

Мой боже это он, я точно знаю это ОН.

darkshvein ☆☆
()

как по делу - тишина ...

anonymous
()
Ответ на: Костыль! от temporary

>форк-бомбах

это что?

Дети неконтролируемо занимающиеся секасом и плодящие себе подобных быстрее федерального бюджета.

darkshvein ☆☆
()

вот до чего довели энтерпрайзщики . это приведёт таки к форку кода - будет RH один своё ядро пилить, остальные применят патчи для увеличения отзывчивости. где при этом будет Линус? наверное с RH.

tommy ★★★★★
()

> демон, контроллирующий параметры отзывчивости

интересное словосочетние

bbk123 ★★★★★
()

По сути грамотнее этого демона врезать в ядро и выбирать так же как например политики частоты процессора ondemand, performance.
Н.п. desktop/server/game/sound.

darkshvein ☆☆
()

Что только не придумают, лишь бы 12309 не фиксить. Но всё без толку, 12309 сильнее. Я уже задумываюсь о переходе на альтернативные ОС...

anonymous
()

Предвижу эпичнейший мордобой между автором этого чуда и автором systemd, при поддержке толп фанбоев.

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

nnz ★★★★
()

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

Сначала графика в ядре, теперь priority boost... ну вы поняли :)

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

>По сути грамотнее этого демона врезать в ядро

Нет, сначала в ядро надо врезать иксы. А потом обязательно асечку и браузер.

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

>Сначала графика в ядре, теперь priority boost... ну вы поняли :)

Где это в ядре графика? Пруф можно?

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

По-любому должно быть «представил демона», а не текущий вариант (ну и дальше согласовать, после изменения).

kss ★★★★★
()

> Архитектура демона выглядит так.

Подробности в картинках! лорчик такой милый ^-^

muon ★★★★
()

Круто - наконец то отзывчивость системы не будет падать при фоновой загрузке.

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

непонятно зачем в ядро? он же должен быть в планировщике, а то действительно получается планировщик планировщика.

Н.п. desktop/server/game/sound.

вот это было бы действительно здорово.
хотя openSuse делает ядро 2.6.34.7-0.7-desktop интерестно что этот самый -desktop означает и как его поменять на 2.6.34.7-0.7-server

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

и кстати как с чудопатчем этот демон работает. Кто кого победит и приоритет занизит :)

ppy ★★
()

Вот был никому ненужный cgroups в ядре, юзали его единицы, а теперь он будет являться предметом срача наравне с 12309, отлично +)

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

Как оказалось, его можно и нужно использовать.

post-factum ★★★★★
() автор топика

Посмотрим что из выйдет. Пока я прикрутил те скрипты, которые заменяют autocgroup патч, перевёл ncq диски на noop. Вроде система стала мягче работать, но когда разворачиваю окно запущенного в wine StrongDC система всё равно начинает лагать, мышь дёргается, фильм воспроизводится рывками.

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

Вроде система стала мягче работать, но когда разворачиваю окно запущенного в wine StrongDC система всё равно начинает лагать, мышь дёргается, фильм воспроизводится рывками.

процессор не одноядерный 500 мегагерц?

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

> процессор не одноядерный 500 мегагерц?

Нет, феном 2 4-х ядерник. Ещё сменил политику снижения частот, чтобы на iowait не тормозил процессор.

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

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

Это костыль.

Упомянутый ранее патч на 200 строк — вот костыль.

Этот патч по крайней мере использует правильную инфраструктуру, а не строит велосипед.

tailgunner ★★★★★
()

>Так, например, при выполнении «make -j 40» на двухъядерной машине автор демона смог без проблем смотреть HD-фильм

Какое отношение к этому имеет отзывчивость системы?

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

>Выходит, это что-то вроде планировщика планировщика ядра? %)

Ага, и поэтому костыль. Ждем исправлений в ядерном планировщике.

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