O que é hugepages
HugePages é uma funcionalidade integrada no kernel do Linux com a versão 2.6. Este recurso basicamente fornece a alternativa para o tamanho de página de 4K (16K para IA64) fornecendo páginas maiores. HugePages é um método para ter páginas maiores onde é útil para trabalhar com memória muito grande.
Configure hugepages usando o kernel tunable vm.nr_hugepages
1. Edite o arquivo /etc/sysctl.conf e especifique o número de hugepages no parâmetro nr_hugepages. A entrada faz o parâmetro persistir através de reinicializações mas não entra em vigor até que você execute o comando ‘sysctl -p’ descrito no próximo passo.
# vi /etc/sysctl.confvm.nr_hugepages = 10
2. Execute o comando ‘sysctl -p’ para habilitar o parâmetro hugepages.
# sysctl -p...vm.nr_hugepages = 10
Verify
Para verificar a configuração do parâmetro hugepages, use um dos 2 métodos abaixo:
1. verifique para o arquivo /proc/meminfo :
# cat /proc/meminfo | grep HugeHugePages_Total: 10HugePages_Free: 10HugePages_Rsvd: 0Hugepagesize: 2048 kB
where:
HugePages_Total – o tamanho do pool de páginas enormes.
HugePages_Free – o número de páginas enormes no pool que ainda não são usadas.
HugePages_Rsvd – o número de páginas enormes comprometidas a serem alocadas do pool, mas nenhuma alocação ainda foi feita.
HugePages_Surp – é a abreviação de “excedente”, e é o número de páginas enormes no pool acima do valor em /proc/sys/vm/nr_hugepages. O número máximo de páginas enormes excedentes é controlado por /proc/sys/vm/nr_overcommit_hugepages.
2. Use o comando sysctl :
# sysctl a | grep nr_hugepagesvm.nr_hugepages = 10
Como calcular hugepages
Hugepages usadas podem ser calculadas pelo método abaixo. Use os valores do outpur de ‘cat /proc/meminfo’ na fórmula abaixo.
HugePages_Total - HugePages_Free = HugePages_Used