Estou executando certos aplicativos sobre DPDK, para ser conservador de memória, estou ajustando continuamente o número de páginas de abertura definindo "nr_hugepages"
echo 8192> /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages
cat /proc/meminfo | grep -i huge
AnonHugePages: 0 kB
HugePages_Total: 8192
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
free -g
total used free shared buff/cache available
Mem: 188 17 159 0 11 170
Swap: 191 0 191
No entanto, quando cheguei a 64K, pareço ficar preso e não consigo alterar as Hugepages novamente
echo 65536 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages
sudo hugeadm --pool-list
Size Minimum Current Maximum Default
2097152 65536 65536 65536 *
1073741824 0 0
cat /proc/meminfo | grep -i huge
AnonHugePages: 0 kB
HugePages_Total: 65536
HugePages_Free: 64
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
Agora, mesmo se eu definir o nr_hugepages como 512
echo 512 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages
nr_hugepages são lidos como 64K
cat /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages
65472
Tags memory-usage linux