[РЕШЕНО] При использовании swap оперативная память не заполняется в первую очередь.

vs220
grep -R . /sys/module/zswap/parameters
кстати, я начения параметров модулей смотрю так - sudo systool -vm <name_module>, например
sudo systool -vm zswap
Module = "zswap"

  Attributes:
    uevent              = <store method only>

  Parameters:
    accept_threshold_percent= "90"
    compressor          = "lz4"
    enabled             = "Y"
    max_pool_percent    = "20"
    same_filled_pages_enabled= "Y"
    zpool               = "z3fold"

PS - Хотя это просто привычка - и значения не имеет - кому как удобнее
Ошибки не исчезают с опытом - они просто умнеют
vasek
верни все, что связано со swap по дефолту
так все и так по дефолту -- кроме swappiness.

vasek
Рекомендую прописать в 99-sysctl.conf
ок -- попробую.
vasek
смотри, какие процессы в него лезут.
как енто глянуть?

vasek
с деактивированным swap и активированным earlyoom
ок -- тоже опробую -- мне почти почти на все хватает оперативки без свапа вообще -- но иногда все же улетает в 100%...

vasek
сбила с понталыка его фраза не могу понять, как его регулировать
ага -- просто в арчевики указаны параметры для регулирования zswap, но как их указывать кроме как в параметрах ядра при запуске я хз -- через sysctl не находит таких параметров.
safocl
как енто глянуть?
Утилиты: top, htop - но нужно подключить колонку swap .... smem - ничего подключать не нужно ... и в инете бродит много скриптов

safocl
мне почти почти на все хватает оперативки без свапа вообще
Уже больше года деактивировал swap и запустил демон earlyoom - проблем нет и забыл о торможении.
Посмотри этот топик на эту тему (похоже ты его пропустил) - там приведены и другие утилиты, да и вообще много чего еще.
Ничего не имею против swap, но нужно понимать что это такое и для чего его держать (в том топике есть и ссылки на статьи про swap) ... и каждый решает сам, в зависимости от решаемых задач и своего железа.
Ошибки не исчезают с опытом - они просто умнеют
safocl
как их указывать кроме как в параметрах ядра при запуске
Согласно Wiki
Если модуль вкомпилирован в ядро, вы также можете передать параметры модулю с помощью командной строки ядра. Для всех стандартных загрузчиков, подойдёт следующий синтаксис:
modname.parametername=parametercontents
Ошибки не исчезают с опытом - они просто умнеют
vasek
1. с активированным swap
Если swap будет рано заполняться, смотри, какие процессы в него лезут.
в основном лезит фаерфокс и та прога которая занимает много оперативки -- в данном случае енто игра Path of exile.
и ентот способ не увенчался успехом -- поскольку все равно начинаются подприживания системы.
vasek
Если модуль вкомпилирован в ядро
а если не вкомпилен?
ну в данном случае он вроде бы вкомпилен -- но опять же -- не в параметрах ядра при его запуске в загрузчике как регулировать zswap ???
vasek
2. с деактивированным swap и активированным earlyoom
сча буду тестировать данный способ.
safocl
а если не вкомпилен?
ну в данном случае он вроде бы вкомпилен – но опять же – не в параметрах ядра при его запуске в загрузчике как регулировать zswap ???
Смотри Wiki Встроенный ядерный модуль только через параметры ядра, другого пути я не знаю ... но может и есть

safocl
ентот способ не увенчался успехом – поскольку все равно начинаются подприживания системы
Зависит еще и от того, какие данные система посчитает подержать (хотя они и не нужны, но вдруг да понадобятся), а чтобы не занимать оперетиву, отправляет их в swap. Можно, конечно, проанализировать дальше по каждому процессу, что это за данные ... но смысла нет. Правда всем этим можно и управлять в ручную, но это тоже очень накладно, так что лучше пробуй earlyoom или что другое, приведенное в том топике (рекомендую все-таки его почитать весь).
Хочешь понять про swap, придется много читать (и не только про swap) и плюс к этому много экспериментировать, чтобы прояснить многие моменты. Не все там так однозначно и понятно и не всем можно управлять.

PS - со значениями параметров zswap лучше не экспериментировать - разработчикам лучше видно чем и они выставляют дефолтные значения довольно оптимально и лучше любые дефолтные значения оставить в покое ... а менять их в случае, когда хорошо понимаешь к чему это приведет.
Да мы и не знаем всех нюансов, как ведет система в разных ситуациях.
Ошибки не исчезают с опытом - они просто умнеют
в общем сча попробовал ентот earlyoom -- чот он не выполняет своих настроек -- добавил ему в исключения PathOfExile_x64 -- ему все равно:
янв 31 09:48:44 safcomp earlyoom[671833]: Will avoid killing process names that match regex '(^|/)(init|systemd|Xorg|sshd|PathOfExile_x64)$'
янв 31 09:48:44 safcomp earlyoom[671833]: mem total: 7936 MiB, swap total:    0 MiB
янв 31 09:48:44 safcomp earlyoom[671833]: sending SIGTERM when mem <=  2.00% and swap <= 10.00%,
янв 31 09:48:44 safcomp earlyoom[671833]:         SIGKILL when mem <=  1.00% and swap <=  5.00%
янв 31 09:48:44 safcomp earlyoom[671833]: mem avail:  6125 of  7936 MiB (77.19%), swap free:    0 of    0 MiB ( 0.00%)
янв 31 09:48:44 safcomp systemd[1]: Started Early OOM Daemon.
...
янв 31 10:05:10 safcomp earlyoom[671833]: mem avail:   157 of  7936 MiB ( 1.99%), swap free:    0 of    0 MiB ( 0.00%)
янв 31 10:05:10 safcomp earlyoom[671833]: low memory! at or below SIGTERM limits: mem  2.00%, swap 10.00%
янв 31 10:05:10 safcomp earlyoom[671833]: sending SIGTERM to process 312959 uid 1001 "xenontrade": badness 878, VmRSS 136 MiB
янв 31 10:05:10 safcomp earlyoom[671833]: process exited after 0.0 seconds
янв 31 10:05:34 safcomp earlyoom[671833]: mem avail:   157 of  7936 MiB ( 1.99%), swap free:    0 of    0 MiB ( 0.00%)
янв 31 10:05:34 safcomp earlyoom[671833]: low memory! at or below SIGTERM limits: mem  2.00%, swap 10.00%
янв 31 10:05:34 safcomp earlyoom[671833]: sending SIGTERM to process 313001 uid 1001 "xenontrade": badness 869, VmRSS 37 MiB
янв 31 10:05:34 safcomp earlyoom[671833]: process exited after 0.0 seconds
янв 31 10:05:48 safcomp earlyoom[671833]: mem avail:   139 of  7936 MiB ( 1.76%), swap free:    0 of    0 MiB ( 0.00%)
янв 31 10:05:48 safcomp earlyoom[671833]: low memory! at or below SIGTERM limits: mem  2.00%, swap 10.00%
янв 31 10:05:48 safcomp earlyoom[671833]: sending SIGTERM to process 672476 uid 1001 "PathOfExile_x64": badness 828, VmRSS 5480 MiB

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