Nohang config file ##################################################################### Комментариями являются строки, начинающиеся с решёток, пробелов и табуляций. Инлайновые комментарии запрещены. Пробелы допустиы внутри строк в любом количестве. ##################################################################### Печатать ли результаты измерения доступной памяти. Допустимые значения: True и False print_mem_check_results = True ##################################################################### True - заблокировать процесс в памяти для запрета его своппинга. False - не блокировать. Значения чувствительны к регистру! Требует рут прав. mlockall = True ##################################################################### Повысить приоритет процесса, установив niceness -20 Допустимые значения - целые числа из диапазона [-20; 19] Требует рут прав. self_nice = -20 ##################################################################### Задать oom_score_adj для процесса. Задание значения -1000 запретит самоубийство. Допустимые значения - целые числа из диапазона [-1000; 1000] Требует рут прав. self_oom_score_adj = -1000 ##################################################################### Коэффициенты, влияющие на интенсивность мониторинга. Допустимыми значениями являются положительные числа. Уменьшение коэффициентов способно снизить нагрузку на прцессор и увеличить периоды между проверками памяти. Почему три коэффициента, а не один? - Потому что скорость наполнения свопа обычно ниже скорости наполнения RAM. Можно для свопа задать более низкую интенсивность мониторинга без ущерба для предотвращения нехватки памяти и тем самым снизить нагрузку на процессор. В дефолтных настройках на данной интенсивности демон работает очень хорошо, успешно справляясь с резкими скачками потребления памяти. rate_mem = 6 rate_swap = 0.2 rate_zram = 1 ##################################################################### Задание уровней доступной памяти, ниже которых происходит отправка сигналов SIGTERM или SIGKILL. Сигнал отправляется если MemAvailable и SwapFree одновременно опустятся ниже соответствующих значений. Значения могут быть выражены в процентах (%), кибибайтах (K), мебибайтах (M) или гибибайтах (G). Например: swap_min_sigterm = 8 % mem_min_sigterm = 0.5 G swap_min_sigkill = 200 M mem_min_sigterm = 4% mem_min_sigkill = 2% swap_min_sigterm = 4% swap_min_sigkill = 2% Задание общей доли zram в памяти, при превышении которой происходит отправка соответствующих сигналов. Экспериментально удалось добиться доли зрам в 95%, при которой система виснет или запускается OOM killer. По мере увеличения доли zram в памяти может падать отзывчивость системы. Может также задаваться в %, K, M, G zram_max_sigterm = 60 % zram_max_sigkill = 65 % ##################################################################### Минимальное значение oom_score, которым должен обладать процесс для того, чтобы ему был отправлен сигнал. Позволяет предотвратить убийство невиновных если что-то пойдет не так. Значение должно быть целым числом из диапазона [0; 1000] oom_score_min = 15 ##################################################################### Мнинмальная задержка после отправки соответствующих сигналов для предотвращения риска убийства сразу множества процессов. Должно быть неотрицательным числом. min_delay_after_sigterm = 0.1 min_delay_after_sigkill = 3 ##################################################################### Процессы браузера chromium обычно имеют oom_score_adj 200 или 300. Это приводит к тому, что процессы хрома умирают первыми вместо действительно тяжелых процессов. Если параметр decrease_oom_score_adj_enable установлен в значение True, то у процессов, имеющих oom_score_adj выше oom_score_adj_before значение oom_score_adj будет опущено до oom_score_adj_after перед поиском жертвы. False - не изменять oom_score_adj процессов перед поиском жертвы. Значения чувствительны к регистру! Требует рут прав. decrease_oom_score_adj_enable = True oom_score_adj_before = 50 oom_score_adj_after = 10