LINUX.ORG.RU

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

 , , ,


0

1

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

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

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

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

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

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

★★★★★

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

Ответ на: комментарий от Gukl

хз.
но у меня везде лагало, что на нвидиях, что на интелях.

а какие спеки?

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

renice в сторону понижения прекрасно работает от юзера.

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

В федоре достаточно в /etc/sysconfig/cpuspeed поменять GOVERNOR=performance и все. Красота.

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

чё, тяжело было заопстить сюда «echo .... > ....»? надо было обязательно на быдлохабр давать ссылку?

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

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

Костыль сидит на костыле и костылями погоняет...

//тред не читал

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

Давно уже можно было man fork набрать и не троллить.

Я бы это посоветовал оппонентам:

fork() creates a new process by duplicating the calling process.

The child has its own unique process ID, and this PID does not match the ID of any existing process group (setpgid(2)).

ну, и так далее.

KRoN73 ★★★★★
()

Надеюсь успеют включить в Ubuntu 10.10

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

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

Это в каком дистрибутиве такие глюки?

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

>И вообще ящитаю, если этот демон развить как следует, то он вполне может быть киллер-фичей линуксов.

Не линуксов а убунт. Не заходил бы на лор, сто лет не знал бы про баг с отзывчивостью линукса.

Napilnik ★★★★★
()

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

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

>Ещё сменил политику снижения частот, чтобы на iowait не тормозил процессор.
бугагашеньки! :3

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

это таки костыль!
на ядро лечить, а не припарки всякие лепить!

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

> разворачиваю окно запущенного в wine StrongDC
это ппц!

мышь дёргается, фильм воспроизводится рывками

это ппц2!
знатный радиус кривизны рук :3

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

> разворачиваю окно запущенного в wine StrongDC

фильм воспроизводится рывками


Ы, хоть фильм-то, надеюсь, не под вайном воспроизводится.

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

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

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

> Ы, хоть фильм-то, надеюсь, не под вайном воспроизводится.

Нет, разумеется.

atrus ★★★★★
()

Интересная статья

Интересная статья спасибо!

seotramp
()

По теме новости - использую такой демон :)

#!/bin/bash
while true; do
sleep 5;
renice -1 -u root;
for irq in `ls /proc/irq/` ;do echo 1 >/proc/irq/${irq}/smp_affinity; done
echo 1 >/proc/irq/default_smp_affinity
done

И в limits.conf прописано ограничение nice для пользователя, равное 10. Большинство проявлений так называемого 12309 исчезло.

Capture
()

Отзывчивость системы... Вчера копировал 37Гб файл. Всё, медный таз. На 25 минут система встала колом и ни на что не реагировала.

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

> Вот что мешало то же самое сделать 4-5-10 лет назад?

как что ? УМВРЧЯДНТ - вот главная причина...

WindowsXP ★★
()

ох ёпрст! а чо не на бейсике-то???

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

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

scaldov ★★
()

таки костыль

Такими вещами должен заниматься не демон, а планировщик вместе с DE (при этом в процессе разработки нужно не забыть учесть то, что за одной машиной может работать несколько пользователей, переключаясь между VT или в режиме multiseat).

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

Я уже задумываюсь о переходе на альтернативные ОС...
Неужто на FreeBSD? В Windows 12309 тоже есть, если что.

RussianNeuroMancer ★★★★★
()

verynice

verynice на что нам дан?

anonymous
()

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

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

>Кто сказал, что только отслеживать? Нужно предоставить возможность и удобно рулить, без CL, а это таки дело DE.

правильно, даешь кусок DE в ядро, потом надо ж еще под каждую хрень в ядро пихать кусок, кусок жабер клиента, кусок редактора - оно ж лучше знает что там пользователю надо, а встроив кусок пароле хранилки вообще шикарно будет. Через 10ок лет если лялех не умрет, то будет кусок гавна грузится размером где то в 20 мб, при этом все будут ликовать что монолит это готично, правильно и вообще то что доктур прописал.

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

Если вы представляете реализацию описанного мною только путём встраивания куска DE в ядро, то я даже боюсь спросить, каким местом вы думаете.

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

>Если вы представляете реализацию описанного мною только путём встраивания куска DE в ядро, то я даже боюсь спросить, каким местом вы думаете.

Боюсь я уже представил каким местом думаете вы. Решать надо не встраиванием костылей и подпорок, а так же забиванием саморезов молотком, а решать вопрос архитектурно, но Линус и Ко лучше будут в помойке копаться.

Какие в ж DE ?

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

>Готов выслушать ваши предложения

В реальности надо не лепить монолит, и скидывать все в kernel space, а постепенно переходить с монолитной на гибридную архитектуру. Да, согласен, тут сложно и надо думать, а не код пачками строчить в уютненькой помоичке, но это будет более верно и поможет решать проблемы быстрее ровно как и даст возможность строить более гибкие системы.

взглянуть на примеры реализации

Краткий курс в ОС что ли дать и загуглить на тему гибридных ядер ? Полагаю это может любой и сам осилить.

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

>Круто. Когда приступите помогать разработчикам Linux реализовать все это?

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

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

у меня есть свои проекты
Они есть проекты, работа, семья...
> а помогать людям которые банят аккаунт за прямоту как то не с руки
Это не ко мне.

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

Попробовал. Ну, слегка полегче стало, но проблему не решило.
Кино в окошке (из-за композитинга) как подергивалось, так и подергивается во время канпеляния (всего -j5 на 4 ядрах), хотя уже и меньше.

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