Сайт | Скачать | Видео | Wiki

Автор Тема: mglru, le9-patch + zram. Нехватка памяти, фризы:OOM KILLER и пр.  (Прочитано 26455 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #15 : 29 Март 2021, 18:23:18 »
т.е. включить через systemd:
Да.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #16 : 30 Март 2021, 09:25:10 »
oomd и т.п. это демон, который следит за наличием памяти и если мало сам убивает жрущие ее процессы не спрашивая?
А если есть своп и он не заполнен?
Что со свопом в этой теме - отключать?

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #17 : 30 Март 2021, 10:49:50 »
Zram подразумевает неиспользование стандартного своп раздела/файла.

Playing supertux2 with 8 "while true; do tail /dev/zero; done" in background https://www.youtube.com/watch?v=Kz8_OuDMsuE
Хочу заметить, что там нет стандартного свопа - раздела, файла или zswap. Там чистый zram,
« Последнее редактирование: 30 Март 2021, 10:53:44 от krasnyh »

Оффлайн betcher

  • Ветеран
  • *****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #18 : 31 Март 2021, 08:02:04 »
Zram подразумевает неиспользование стандартного своп раздела/файла.
Можно иметь и zram-swap и обычный, приоритеты только расставить правильно. Почему нет?

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #19 : 31 Март 2021, 09:03:58 »
zram-swap и обычный
Обычный - это типа
uird.mode=changes uird.changes=/memory/ch.img::FS=btrfs::MNT_OPTS=compress=lzo::SIZE=1024::TIMEOUT=1
Что-то запутался - если zswap делается через zram.ko - зачем вообще zswap.ko
zswap монолитно. zram модулем.
Кстати - почему compress=lzo ? Вроде lz4  лучше. Или zstd

приоритеты только расставить правильно.
Можно подробнее...

Логически мысля - если uksm+zswap = т.к. zswap сожмет - uksm станет менее эффективен, т.к. одинаковых блоков памяти будет меньше
Или как это работает...?
« Последнее редактирование: 31 Март 2021, 10:11:03 от sfs »

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #20 : 31 Март 2021, 12:50:22 »
если uksm+zswap
Автор pf-kernel так и использует https://www.linux.org.ru/news/kernel/16161909?cid=16168143.


А вот чистый zram использует hakavlad и советует другим. Ссылка.
« Последнее редактирование: 31 Март 2021, 12:55:18 от krasnyh »

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #21 : 31 Март 2021, 12:59:20 »
приоритеты только расставить
Можно, почему нет. Если не ошибаюсь, параметр swapd_auto_swapon=0, как раз и выключает своп при использовании zram. Т.е. не требуется физически удалять, такого и не говорил.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #22 : 31 Март 2021, 13:21:03 »
Автор pf-kernel так и использует https://www.linux.org.ru/news/kernel/16161909?cid=16168143.
Это он настоящий zswap использует, а не swap в zram
А если у него zswap файлом на диске - вообще не то, что я имел ввиду

Провел эксперимент (ядро 5.11.0-pf2) :
prar2008-ovs в виртуалке с 1G RAM с earlyoom-p-1.6.1_64-sf01.pfs
= в palemoon открывается youtube + при открытии 1го ролика earlyoom (с дефолтными настройками)его убивает

prar2008-ovs в виртуалке с 1G RAM с earlyoom и zram=33% (swap в zram) = в palemoon открывается youtube + при открытии 2го ролика earlyoom (с дефолтными настройками)его убивает

Делаю вывод, что при малом количестве памяти zram хоть чем-то может помочь
А более глобальный вывод - пк <2G RAM на помойку  ;)
Кроме того после падения своп остался частично заполненным.
Мутный какой-то этот zram. uksm попонятней будет

prar2008-ovs в виртуалке с 1G RAM БЕЗ earlyoom = в palemoon открывается youtube + при открытии 1го ролика он сам падает (без earlyoom)
..... Может так хорошо только с palemoon
Кому earlyoom реально помогал и в каких ситуациях?

Пока сделал модуль earlyoom-p-1.6.1_64-sf01.pfs - при горячей загрузке сам загрузит что надо
Не уверен что надо ставить в iso. Особенно включенным по дефолту...
« Последнее редактирование: 31 Март 2021, 15:55:00 от sfs »

Оффлайн betcher

  • Ветеран
  • *****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #23 : 31 Март 2021, 13:27:42 »
zram-swap и обычный
Имел ввиду своп в zram и обычный своп на раздел или в файл. Приоритеты расставить у свопов, чтоб приоритет zram-свопа был выше.
uird.mode=changes uird.changes=/memory/ch.img::FS=btrfs::MNT_OPTS=compress=lzo::SIZE=1024::TIMEOUT=1
Это совсем не про своп. Lzo скорее для примера, середнячок. Можно не указывать алгоритм вообще, будет то что по умолчанию. Визуально разница в алгоритмах вообще не заметна, линейкой не мерил.
« Последнее редактирование: 31 Март 2021, 13:34:24 от betcher »

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #24 : 31 Март 2021, 13:30:41 »
Zswap это zswap, а zram это zram. Не надо придумывать своих определений, они уже и так есть.
https://wiki.archlinux.org/index.php/Improving_performance#Zram_or_zswap


Для earlyoom надо сразу и конфиг в модуль, пример по ссылке https://forum.puppyrus.org/index.php?topic=22942.msg172052#msg172052. Он не будет убивать окно браузера, параметр Web Content.

Оффлайн betcher

  • Ветеран
  • *****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #25 : 31 Март 2021, 13:33:36 »
как раз и выключает своп при использовании zram. Т.е. не требуется физически удалять, такого и не говорил.
swapon с ключем -p устанавливает приоритет использования доступных свопов. Если у вас больше одного свопа можете используя эти приоритеты заставить ядро юзать своп на zram, а своп на диске использовать только если на зрам заканчивается место. Это имел ввиду.

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #26 : 31 Март 2021, 13:34:57 »
Приоритеты расставить у свопов, чтоб приоритет zram-свопа был выше.
Зачем придумывать, если для этого есть zswap. Zram же как раз для того, чтобы полностью отказаться от свопа на медленном носителе. Для каждого случая свои инструменты, разве нет?

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #27 : 31 Март 2021, 13:41:48 »
prar2008-ovs в виртуалке с 1G RAM с earlyoom и zswap=33%
А если disksize=Total RAM? Я же именно об этом столько постов написал, чтобы обратить внимание на необходимость изменения дефолтного параметра в сторону увеличения, иначе смысла нет.


Автор zram предусматривает возможность создания disksize > MemTotal.
Цитата
Примечание. Нет смысла создавать zram, превышающий вдвое объем памяти, поскольку мы ожидаем степени сжатия 2: 1.
https://www.kernel.org/doc/html/latest/admin-guide/blockdev/zram.html#set-disksize


Алгоритм lzo-rle считается более быстрым, но zstd жмет сильнее.
Цитата
Начиная с Linux 5.1 дефолт lzo-rle. Хороший дефолт. zstd - альтернатива - сжимает сильнее, но, возможно, медленнее.
https://www.linux.org.ru/forum/general/16233491?cid=16233653
Код
live@pra-roll ~ % cat /sys/block/zram0/comp_algorithm 
lzo lzo-rle lz4 lz4hc 842 [zstd]
« Последнее редактирование: 31 Март 2021, 13:58:25 от krasnyh »

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
  • Автор темы
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #28 : 31 Март 2021, 14:30:00 »
Делаю вывод, что при малом количестве памяти zram хоть чем-то может помочь
Не прошло и 100 лет.
Zram используется уже давно в Chrome OS, в fedora33, в garuda, в alexelec. Windows пошла по этому пути, про Apple тоже самое говорят. Здесь на форуме про zram куча постов...

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #29 : 31 Март 2021, 15:38:28 »
Что лучше?
MNT_OPTS=compress=
или swap в zram?
swap в zram, наверное попроще - в любое время можно вкл\выкл
А MNT_OPTS=compress надо на стадии инитрд делать...

Не надо придумывать своих определений,
Ну и как  swap в zram называется по научному?
В моем эксперименте поправил zram=

Для каждого случая свои инструменты
Ну так какие для каких? Надо как-то выводы из темы сделать...

А если disksize=Total RAM? Я же именно об этом столько постов написал, чтобы обратить внимание на необходимость изменения дефолтного параметра в сторону увеличения, иначе смысла нет.
prar2008-ovs в виртуалке с 1G RAM  и zram=100% (swap в zram) = в palemoon открывается youtube + при открытии 4го ролика зфдуьщщт упал
Т.е. получается - это лучший вариант.....
А это не тоже самое как MNT_OPTS=compress= в uird получается....
Мутная тема. С трудом понимаю как такое работает...

Автор zram предусматривает возможность создания disksize > MemTotal.
Не веря в успех попробовал zram=200%
Работает !!! Вкладок удалось открыть в 2 раза больше , чем zram=100%
Не понимаю откуда берется память.... Или htop паказывает несжатые объемы...
Так сильнее тормозит (мне показалось)

lzo-rle считается более быстрым, но zstd жмет сильнее
Получается - золотая середина lz4
. Он и в 4.4. ядрах DDR есть

Не прошло и 100 лет.
Ну давайте выработаем какие-то рекомендации по использование - что юзать на каком железе и при каких задачах
Кто может сформулировать?

На домашнем ПК с 8RAM - я , наверное ограничусь uksmd