Разработка > Пользовательский

Earlyoom в Runtu

(1/3) > >>

ek-nfn:
Пользователь, HsH как-то натолкнул на такую утилитку - Earlyoom, которая автоматом может отслеживать и экстренно завершать процесс, потребляющий больше всего памяти в системе. Очень нужная штука для любителей Рунту (как правило, ставящие ее на слабые машины). Избавляет от тормозов включения сброса данных в свап. Вот с ней бы поэкспериментировать. После чего ее можно будет включать в дистрибутивы Рунту.

Пользователь.:
Прочитал описание программы Earlyoom, очень узкоспециализированная программа, не подходит для всех случаев нехватки памяти.

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

На слабых компьютерах не только нехватка памяти, там могут быть проблемы и с блоком питания, и с охлаждением, и с слабым процессором, со слабой видеокартой, с медленной сетью, с медленными усб портами.

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

Лучше всего конечно перейти на внешнюю клавиатуру, а нетбучную убрать для улучшения вентиляции.

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

ek-nfn:

--- Цитата: Пользователь. от Январь 10, 2020, 11:53:19 ---Swap более универсален в этой ситуации, позволяет спокойно сохранить данные и закрыть программу или перезапустить.

--- Конец цитаты ---
Ты похоже не понял. Эта программа как раз и создана для того, чтобы не задействовался Swap, так как уж слишком тормозной процесс и частый для машин с ОЗУ 2-4 гб. Спокойно не получается, хочеться долбануть машину об пол. Проще своевременно закрыть тот же браузер (практика показывает, что именно он запускает процесс активного сброса в свап) и затем снова открыть, а уж он сам восстановит данные, но при этом существенно освободит ОЗУ. Да и офис восстановит свои данные при повторном запуске. И это будет намного быстрее, чем ожидание окончания работы через свап.
Я писал в свое время скрипт для контроля заполнения ОЗУ и при превышении порога вызывалась команда закрытия бразера, так как другие программы всегда вели себя нормально. А тут уже готовый демон, делающий что надо и закрывающий любую программу. Идеальный софт для слабой машинки. Только вот насколько корректно работает? Мне то сейчас это уже не надо, а так бы установил сам.

HsH:

    Я устанавливал Earlyoom на один из доступных ноутбуков с 4Гб ОЗУ. Тестировал с ограничением выделяемой памяти (параметр ядра "mem=xxxM") до 512 и 256Мб, как с обычным своп-разделом 2Гб, так и совместно с zswap. Какое-то явное изменение поведения системы зафиксировать не удалось, полагаю это связано с недостаточно полноценным и продолжительным наблюдением.

Возможно, у кого-то получится наблюдать более ощутимые и измеримые результаты.

smik55:
Не знаю, как эта утилита позволит отказаться от Своп или как то на него влиять. Судя по описанию, она просто контролирует момент нехватки памяти и отключает процесс, занимающий больше всех памяти.

--- Цитировать (выделенное) ---Обработчик OOM (Out Of Memory) в ядре срабатывает когда состояние нехватки памяти уже достигло критичных значений и обычно к этому моменту система уже не реагирует на действия пользователя.
 В качестве альтернативы OOM Killer разработан Early OOM Daemon (earlyoom).
Фоновый процесс earlyoom 1.1, который периодически (10 раз в секунду) проверяет объем доступной памяти (MemAvailable, SwapFree) и пытается на ранней стадии отреагировать на возникновения нехватки памяти.
Если объём доступной памяти меньше заданного значения, то earlyoom принудительно (через отправку SIGKILL) завершит работу процесса, наиболее активно потребляющего память (имеющего самое большое значение /proc/*/oom_score), не доводя состояние системы до очистки системных буферов и мешающего работе своппинга.

--- Конец цитаты ---
.
Я думаю, это для тех случаев, когда часто наблюдается полное зависание системы, когда спасает только ребут. Такое наблюдалось например у меня на ОС 18.04х64, которая больше всего занимает памяти из моих 2 ГБ ОЗУ и 3ГБ Своп, который толком и не задействовался даже на половину, в основном при активном использовании тяжелого браузера одновременно с другими программами.
Установил тоже earlyoom и libnotify-bin» на сбору 20.04 МАТЕ.
Изменил так же значение vm.swappiness=20, хотя так и не пришел к однозначному выводу в пользе этого.
=

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Перейти к полной версии