LINUX.ORG.RU

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

 , , ,


0

1

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

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

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

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

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

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

имхо потом надо будет демона который контролирует этого демона...

abbath ★★ ()

Костыль!

Сабж.

форк-бомбах

это что?

temporary ★★ ()

попробовал

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

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

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

post-factum ★★★★★ ()

автор, ты учебник русского читать не пробовал? говорят, помогает

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

Бесконечное порождение процессом самого себя.

post-factum ★★★★★ ()

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

darkshvein ☆☆ ()

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

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

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

это что?

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

darkshvein ☆☆ ()

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

tommy ★★★★ ()

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

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

bbk123 ★★★★★ ()

> планировщика ядра

Чо?

Relan ★★★★★ ()

> контроллирующий

исправлляйте

mutley ()

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

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

Например, в первом предложении согласование хромает вовсю.

kss ★★★★★ ()

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

anonymous ()

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

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

nnz ★★★★ ()

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

kovrik ★★★★★ ()

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

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

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

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

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

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

Вообще-то, нет, но если нравится текущий вариант — пусть так.

post-factum ★★★★★ ()
Ответ на: комментарий от 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 ()

Посмотрим что из выйдет. Пока я прикрутил те скрипты, которые заменяют 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 ★★★★★ ()
Ответ на: комментарий от redgremlin

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

А чем это не отзывчивость?

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