Capítulo 23. Configuração de páginas enormes
A memória física é gerenciada em pedaços de tamanho fixo chamados páginas. Na arquitetura x86_64, suportada pelo Red Hat Enterprise Linux 8, o tamanho padrão de uma página de memória é 4 KB. Este tamanho de página default provou ser adequado para sistemas operacionais de propósito geral, como o Red Hat Enterprise Linux, que suporta muitos tipos diferentes de cargas de trabalho.
Entretanto, aplicações específicas podem se beneficiar do uso de páginas maiores em certos casos. Por exemplo, uma aplicação que funciona com um conjunto de dados grande e relativamente fixo de centenas de megabytes ou mesmo dezenas de gigabytes pode ter problemas de desempenho ao utilizar 4 páginas KB. Tais conjuntos de dados podem exigir uma enorme quantidade de 4 páginas KB, o que pode levar a sobrecarga no sistema operacional e na CPU.
Esta seção fornece informações sobre enormes páginas disponíveis no Red Hat Enterprise Linux 8 e como você pode configurá-las.
23.1. Características de páginas enormes disponíveis Copiar o linkLink copiado para a área de transferência!
Com o Red Hat Enterprise Linux 8, você pode usar páginas enormes para aplicações que funcionam com grandes conjuntos de dados, e melhorar o desempenho de tais aplicações.
A seguir estão os enormes métodos de página, que são suportados no Red Hat Enterprise Linux 8:
HugeTLB pagesAs páginas HugeTLB também são chamadas de páginas enormes estáticas. Há duas maneiras de reservar as páginas HugeTLB:
- No momento da inicialização: Aumenta a possibilidade de sucesso porque a memória ainda não foi significativamente fragmentada. Entretanto, nas máquinas NUMA, o número de páginas é automaticamente dividido entre os nós NUMA. Para mais informações sobre parâmetros que influenciam o comportamento das páginas do HugeTLB no momento do boot, veja Seção 23.2, “Parâmetros para reservar páginas HugeTLB no momento da inicialização” e como usar esses parâmetros para configurar as páginas do HugeTLB no momento do boot, veja Seção 23.4, “Configuração do HugeTLB no momento da inicialização”.
- Em tempo de execução: Permite reservar as enormes páginas por nó NUMA. Se a reserva de tempo de execução for feita o mais cedo possível no processo de inicialização, a probabilidade de fragmentação da memória é menor. Para mais informações sobre parâmetros que influenciam o comportamento das páginas do HugeTLB em tempo de execução, veja Seção 23.3, “Parâmetros para reservar páginas HugeTLB em tempo de execução” e como usar esses parâmetros para configurar as páginas do HugeTLB em tempo de execução, veja Seção 23.5, “Configuração do HugeTLB em tempo de execução”.
Transparent HugePages (THP)Com THP, o núcleo atribui automaticamente páginas enormes a processos, e portanto não há necessidade de reservar manualmente as páginas enormes estáticas. Os dois modos de operação no THP são os seguintes:
-
system-wide: Aqui, o núcleo tenta atribuir páginas enormes a um processo sempre que é possível alocar as páginas enormes e o processo está usando uma grande área de memória virtual contígua. per-process: Aqui, o kernel só atribui páginas enormes às áreas de memória de processos individuais que você pode especificar usando a chamada de sistemamadvise().NotaA característica THP suporta apenas 2 MB de páginas.
Para informações sobre como ativar e desativar o THP, consulte Seção 23.6, “Possibilitando abraços transparentes” e Seção 23.7, “Desabilitando as páginas de abraços transparentes”.
-