Atualmente estou migrando do cgroups v1 para o cgroups v2. E não consigo encontrar o arquivo memory.swappiness que usei no cgroups v1. Existem apenas os seguintes arquivos relativos à troca
memory.swap.current
memory.swap.events
memory.swap.high
memory.swap.max
mas cada um deles não tem nada a ver com o parâmetro swappiness, de acordo com a documentação . Não encontrei nenhuma informação sobre o arquivo memory.swappiness no cgroups v2, apenas sobre /proc/sys/vm/swappiness
o arquivo e o parâmetro vm.swappiness no /etc/sysctl.conf
arquivo. Isso significa que não há possibilidade de definir o swappiness usando cgroups v2?
SO: Debian 11
Isso mesmo, com cgroups v2, swappiness só pode ser controlado globalmente. Tejun Heo (que projetou e implementou o cgroups v2) deu o seguinte raciocínio :
Na prática, o swappiness é mais sobre o equilíbrio de E/S no sistema, que normalmente é uma propriedade do armazenamento do sistema, em vez do comportamento individual da carga de trabalho.
O cgroups v2 fornece outras configurações que podem ser usadas para controlar o uso de memória , geralmente de maneiras mais apropriadas do que swappiness: os limites podem ser definidos para evitar a recuperação total (
memory.min
), tentar minimizar a recuperação (memory.low
) e limitar o uso da troca (memory.swap.max
e em casos extremosmemory.swap.high
) .