Хочу обменяться мыслями на тему того, нужен ли в Linux swap сейчас. Ниже будут мои рассуждения, подтвержденные моей практикой, у вас может быть другой опыт, о котором было бы интересно почитать.
Для начала определимся, что есть два варианта swap - это zswap и, собственно, дисковый (файлом или разделом - не принципиально).
Если честно, я zswap, zram и вот это все я не очень понял в свете достаточно частого срабатывания OOM killer, который, как мне кажется, в условиях zram/zswap срабатывает не очень корректно. Настаивать не буду, просто когда у меня машинку заклинило, я сразу и сменил systemd-oomd на earlyoom и отключил zram. Теперь, вроде, срабатывает заранее и хорошо. На машинках с маленьким объемом памяти (4Гб) все крутится сильно веселее, если zram/zswap не использовать в принципе и использовать swap.
Однако, достаточно часто народ (я в том числе был) жмотится сделать нормальный swap и делает его, например, на 1Гб. Это не лишено смысла, если swap лежит на диске, поскольку при этом уход системы в swap становится критическим для отклика. Меня это в итоге привело к ситуации, когда память занята кешем (большой ввод-вывод), а своп забивается полностью и система ощутимо подтормаживает тем, что в своп данные вносятся и забираются. Не забываем и то, что для работы hibernation своп должен быть равным памяти. Я его не использую, но все равно переделал на 32Гб (по размеру памяти), что, как ни парадоксально, объем обмена со swap уменьшило, судя по vmstat.
Вывод: я себе везде отключил zram/zswap и поставил обычный файловый swap, равный объему памяти. На серверах, наверное, своп ограничил бы 64Гб.