Не так ужасен своп, как его малюют

Sep 21, 2021 12:55


Признаюсь. Раньше, бывало, я ставил "vm.swappiness=0" и/или вообще не создавал файл/раздел подкачки. Но потом тов. kvazimoda24 ткнул меня носом вот в эту статью. Теперь мир уже не станет прежним так делать я больше не буду.

Краткое содержание для тех, кому не хочется читать многабукаф.
  1. Если физической оперативной памяти до хренищщи, то тащем-та на настройки ( Read more... )

интересности, hints, ссылки, linux

Leave a comment

Comments 5

cae32 September 21 2021, 10:18:57 UTC
Спасибо.

Reply


dennis_chikin September 21 2021, 10:46:36 UTC
Мля, сколько мне с ним крови попортили... И с 0, и с 10.
То есть вот мало того, что каспер, требующий 4.5 гига на машинах с гигом, но еще и добавили централизованно проверку, ага: где меньше двух - там принудительно в swappiness=10.
Результат слегка предсказуем - арм занимается ТОЛЬКО дрочением диска.

Ну и сервера со swappiness=0, ага. "Это чтобы он ВСЮ память использовал, и не изнашивал диск!"

По факту, если приложение написано дебилами, а железо "вам нормального не положено!" - увеличиваем. До 70-80-90. Тогда на диск будет ПИСАТЬСЯ, но оно туда будет значительно реже лазить, чтобы читать. Ну и с серверами аналогично: хочет писать - пусть пишет. Сейчас это, кажется, вообще одна из самых дешевых операций.

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

Reply


donz_ru September 21 2021, 11:56:23 UTC
Лет двадцать назад такие же вопросы. Люди с пеной у рта доказывали, что диски, ВНЕЗАПНО, медленнее ОЗУ. А мне приходилось в ответ доказывать, что ОС пишут не дураки, и что они тоже про это в курсе, как и студенты второго курса технического вуза. И что своп не используется от нечего делать.

Reply


karpion September 21 2021, 17:15:46 UTC
При старте системы запускаются несколько процессов getty, которые инициализируют свои терминалы и ждут юзерского ввода логина. Вполне логично выкинуть их код из памяти (если надо будет, можно подтянуть из запускаемого файла), а данные засвопить в swap-area (page-area) на диск. И освободившееся место использовать для кэширования диска, что в целом снизит нагрузку на диск.

Если у нас SSD, то выкинуть код из памяти полезно, а вот свопить данные надо с оглядкой, ибо износ flash-памяти при записи никто не отменял.

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

Reply


kulibin_d September 26 2021, 18:31:23 UTC
Был еще трюк со свопом на виртуальный диск, чтобы лишний раз не дрючить ssd.

Reply


Leave a comment

Up