Как установить swapiness для Linux?

29

/proc/sys/vm/swappinessэто хорошо, но я хочу ручку, которая соответствует процессу /proc/$PID/oom_adj. Так что я могу сделать некоторые процессы менее вероятными, чем другие, чтобы обменять их страницы. В отличие от memlock()этого, это не предотвращает замену программы. И, например nice, пользователь по умолчанию не может сделать свои программы менее вероятными, но только с большей вероятностью поменяться местами. Я думаю, я должен был это назвать /proc/$PID/swappiness_adj.

Дэн Д.
источник

Ответы:

30

Вы можете настроить swappiness для каждой группы:

http://www.kernel.org/doc/Documentation/cgroup-v1/cgroups.txt

http://www.kernel.org/doc/Documentation/cgroup-v1/memory.txt

Для более простого введения в cgroups, с примерами, см.

https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Resource_Management_Guide/ch01.html

Позволь мне быть
источник
2
Помните, что, согласно руководству RedHat, активация memory-cgroup использует дополнительную память, 40 байт на страницу. Рассмотрим огромные страницы, чтобы уменьшить количество страниц в этом контексте, см. Wiki.debian.org/Hugepages
Tino