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

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

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

Оффлайн hakavlad

  • Пользователь
  • **
  • Сообщений: 31
  • Репутация: +1/-0
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #90 : 14 Июль 2021, 16:55:05 »
Не знаете в чем заключается "своя реализация" le9 в pf?

Для пользователя отличия следующие:

- выше вероятность ошибок у pf версии патча. Возможные ошибки:
https://github.com/hakavlad/le9-patch/issues/6
https://github.com/hakavlad/le9-patch/issues/5

- у pf жесткость мягкого порога (vm.unevictable_kbytes_low) зависит от своппинес - с понижением swappiness защита ухудшается. У le9db жесткость мягкой защиты кэша (vm.clean_low_kbytes) не зависит от swappiness

Оффлайн hakavlad

  • Пользователь
  • **
  • Сообщений: 31
  • Репутация: +1/-0

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5038
  • Репутация: +130/-1
  • Автор темы
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #92 : 14 Июль 2021, 17:20:28 »
у pf жесткость мягкого порога (vm.unevictable_kbytes_low) зависит от своппинес - с понижением swappiness защита ухудшается.
В наших сборках по умолчанию vm.swappiness=60. Впрочем это значение дефолтно почти во всех дистрибутивах. У меня 200, но научно я не смогу обосновать свой выбор. )
Код
live@roll2103 ~ % sudo sysctl -a | grep swap
vm.swappiness = 200
live@roll2103 ~ % uname -r                 
5.12.0-pf6-lf

Долгое время у пользователей не было понимания, что такое swappiness и какое значение правильней. Считалось, что при выставлении в ноль, свап выключался.
  Недавно наткнулся на переведенную статью Что такое Swappiness в Linux? (и как это изменить), утверждающую, что swappiness это всего лишь уровень баланса между файловыми страницами и анонимными. Если, конечно, я все правильно понял.

Оффлайн hakavlad

  • Пользователь
  • **
  • Сообщений: 31
  • Репутация: +1/-0
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #93 : 14 Июль 2021, 17:29:02 »
swappiness это всего лишь уровень баланса между файловыми страницами и анонимными
Да. От swappiness зависит какие страницы будет выталкиваться при нехватке памяти - файловые или анонимные. Высокий swappiness дает эффект, подобный le9 - защищает кэш файлов.

Высокий своппинес идеален тогда, когда система на медленном усторойстве (HDD), а устройство подкачки - быстрое (zram). Смотрите последнюю документацию:

For in-memory swap, like zram or zswap, as well as hybrid setups that have swap on faster devices than the filesystem, values beyond 100 can be considered. For example, if the random IO against the swap device is on average 2x faster than IO from the filesystem, swappiness should be 133 (x + 2x = 200, 2x = 133.33).
https://github.com/torvalds/linux/blob/master/Documentation/admin-guide/sysctl/vm.rst#swappiness

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5038
  • Репутация: +130/-1
  • Автор темы
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #94 : 14 Июль 2021, 17:30:50 »
Кстати, post-factum писал на лоре, что у него swappiness 100. Видно поэтому у него все работает безглючно с собственной версией le9. А проблема у других пользователей, это проблема других пользователей...  :)

Цитата
swappiness=100

Не представляю чтобы было иначе. У меня везде так.
Ссылка
« Последнее редактирование: 14 Июль 2021, 17:42:46 от krasnyh »

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33173
  • Репутация: +226/-0
    • PuppyRus-A
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #95 : 14 Июль 2021, 17:32:16 »
насколько глубоко бэкпортировать? 4.19? 4.14?
В нашей популярной в народе сборке для древнего железа на дебиан9  2 ядра : 4.4 и 5.1
Я так понимаю, Ваш https://github.com/hakavlad/le9-patch/blob/main/obsolete/le9cb_patches/le9cb0-4.19.patch на pf исходники  не пойдет?
Хотя uksmd (т.е. собственной pf реализации только с 5.1) Т.е. на 4 только uksm, который и на ванильное ядро есть
Не хочется вас зря напрягать. Бэкпортировать сложно?

Прошу форумчан проверить в DDR01 у всех, у кого не работает на 5.1. ядре работает на https://mirror.yandex.ru/puppyrus/puppyrus-a/kernel/new/4.19.2-pf5/ ?
По итогу опроса, может скомпилю 4.19 le9 uksm
Замена ядра

Оффлайн hakavlad

  • Пользователь
  • **
  • Сообщений: 31
  • Репутация: +1/-0
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #96 : 14 Июль 2021, 17:32:49 »
Считалось, что при выставлении в ноль, свап выключался
Возможность своппинга зависит также от vm.watermark_scale_factor.

At 0, the kernel will not initiate swap until the amount of free and file-backed pages is less than the high watermark in a zone.
https://github.com/torvalds/linux/blob/master/Documentation/admin-guide/sysctl/vm.rst#swappiness

This factor controls the aggressiveness of kswapd. It defines the amount of memory left in a node/system before kswapd is woken up and how much memory needs to be free before kswapd goes back to sleep.
The unit is in fractions of 10,000. The default value of 10 means the distances between watermarks are 0.1% of the available memory in the node/system.
https://github.com/torvalds/linux/blob/master/Documentation/admin-guide/sysctl/vm.rst#watermark_scale_factor

Если выставить vm.watermark_scale_factor=1000, то своппинг будет отлично идти даже при 0 swappiness.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33173
  • Репутация: +226/-0
    • PuppyRus-A
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #97 : 14 Июль 2021, 17:36:42 »
Хотелось бы от автора услышать рекомендации для пк с 1,2,4 RAM
У нас в основном любители, которые  любят пошаговые инструкции
Нам бы как-то попроще рекомендации получить  ;)
От типа браузера как-то le9 зависит или он более низкоуровневый?

Оффлайн hakavlad

  • Пользователь
  • **
  • Сообщений: 31
  • Репутация: +1/-0
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #98 : 14 Июль 2021, 17:37:51 »
Бэкпортировать сложно?
Нет, полчаса делов на неспешный перенос строк. Это если не тестировать результат.

Можно бэкпортировать без документации - так применимость патча должна быть шире, ибо в документации (vm.rst) периодически  добавляют-удаляют ключи, что может ломать совместимость иногда.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33173
  • Репутация: +226/-0
    • PuppyRus-A
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #99 : 14 Июль 2021, 17:39:28 »
Пускай народ как-то ответит . Тогда уже и попросим вас
Прошу форумчан проверить в DDR01 у всех, у кого не работает на 5.1. ядре работает на https://mirror.yandex.ru/puppyrus/puppyrus-a/kernel/new/4.19.2-pf5/ ?
По итогу опроса, может скомпилю 4.19 le9 uksm
« Последнее редактирование: 14 Июль 2021, 17:45:58 от sfs »

Оффлайн hakavlad

  • Пользователь
  • **
  • Сообщений: 31
  • Репутация: +1/-0
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #100 : 14 Июль 2021, 17:43:18 »
От типа браузера как-то le9 зависит или он более низкоуровневый?
Не понимаю вопроса.

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

Можно спорить об оптимальных значениях для vm ручек - какими они должны быть для разных размеров памяти системы и при разных нагрузках.

У меня deb9, и 200М резервов достаточно для комфорта.

На системах со snap/flatpak выше потребность в резервировании кэша, так как такие пакеты приносят свои либы вместо использования системных, что повышает потребность в защите большего объема кэша файлов.

Оффлайн hakavlad

  • Пользователь
  • **
  • Сообщений: 31
  • Репутация: +1/-0

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33173
  • Репутация: +226/-0
    • PuppyRus-A
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #102 : 14 Июль 2021, 17:53:00 »
    От типа браузера как-то le9 зависит или он более низкоуровневый?
Не понимаю вопроса.
Выше я тестировал на хроме. Волшебный эффект le9 будет с любыми прогами?
Короче хотелось бы услышать ваши рекомендации для старого железа
https://www.phoronix.com/scan.php?page=news_item&px=le9-Linux-Low-RAM
Поздравляю с международным признанием! Даешь в mainline kernel !

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33173
  • Репутация: +226/-0
    • PuppyRus-A
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #103 : 14 Июль 2021, 17:54:28 »
На системах со snap/flatpak выше потребность в резервировании кэша, так как такие пакеты приносят свои либы вместо использования системных, что повышает потребность в защите большего объема кэша файлов.
У нас используется "портированный софт" :что-то подобное с несистемными либами в своей реализации.

200М резервов достаточно для комфорта.
Имеется ввиду zswap такого размера?
« Последнее редактирование: 14 Июль 2021, 18:06:34 от sfs »

Оффлайн hakavlad

  • Пользователь
  • **
  • Сообщений: 31
  • Репутация: +1/-0
Re: Нехватка памяти, фризы:OOM KILLER , le9-patch и пр.
« Ответ #104 : 14 Июль 2021, 18:09:38 »
Имеется ввиду zswap такого размера?
размер защищаемого объема кэша, то есть vm.unevictable_kbytes_low/min