GUIAS

O arquivo de paginação e os jogos: por que desligá-lo sai pela culatra

O Windows só consegue prometer aos programas tanta memória quanto a sua RAM mais o arquivo de paginação. Tire o arquivo de paginação e esse teto cai para um pouco abaixo da sua RAM, e um jogo que chega nele pode congelar ou travar.

Você tem 32 GB de RAM, então um guia disse que o arquivo de paginação é uma sobra das máquinas menores e pode ir embora. Ou um jogo travou com um erro de falta de memória enquanto o Gerenciador de Tarefas mostrava bastante RAM livre. Ou, no meio de uma partida, o Windows mostrou "Your computer is low on memory" (o computador está com pouca memória) e pediu para você fechar programas.

As três coisas vêm do mesmo mecanismo, e ele não é o que o conselho de desligar o arquivo pressupõe.

Para que serve o arquivo de paginação

O Windows entrega memória em duas etapas. Primeiro, um programa confirma memória, que é o Windows prometendo que o espaço existe, e só depois escreve nela. A introdução ao arquivo de paginação da Microsoft define o teto dessas promessas: o limite de confirmação do sistema é a soma da memória física com todos os arquivos de paginação.

O total de todas as promessas é a carga de confirmação, e ela não é o mesmo que a RAM em uso. O guia de desempenho da Microsoft sobre memória confirmada observa que a memória confirmada não foi necessariamente escrita ou tocada, então a carga pode chegar ao limite enquanto ainda há bastante memória física disponível. É assim que um jogo pode ficar sem memória enquanto o Gerenciador de Tarefas mostra RAM livre.

O arquivo de paginação tem um segundo trabalho: guardar memória que foi alterada, mas é pouco usada, para que o Windows possa tirá-la da RAM e dar essa RAM para algo mais ocupado. O terceiro trabalho dele, os despejos de memória, tem uma seção própria abaixo.

O que acontece sem ele

Sem arquivo de paginação, o guia de dimensionamento do arquivo de paginação da Microsoft diz que o limite de confirmação fica um pouco abaixo da memória física instalada. As promessas de todos os programas agora precisam caber dentro da RAM, incluindo a memória que foi prometida e ainda não foi usada.

Quando a carga chega ao limite, a introdução diz que o sistema e os processos podem não conseguir memória confirmada, o que pode causar congelamentos, travamentos e outros defeitos. Mark Russinovich, escrevendo sobre a memória virtual do Windows em 2008, foi direto: quando o limite de confirmação é atingido, as alocações que confirmam memória falham. Um jogo que pede memória nesse momento não a recebe.

Ele também respondeu ao argumento da velocidade. Algumas pessoas acham que não ter arquivo de paginação melhora o desempenho, escreveu ele, e algumas cargas de trabalho podem mesmo ganhar; mas, em geral, um arquivo de paginação deixa o Windows gravar páginas que não estão sendo usadas ativamente, o que deixa mais memória utilizável para o sistema. A introdução da Microsoft acrescenta que alguns produtos e serviços exigem um arquivo de paginação.

Os despejos de memória também precisam dele

Quando o Windows trava com um erro de parada, o registro do que falhou é, por padrão, gravado por meio do arquivo de paginação. A documentação de despejos da Microsoft diz que o conteúdo da RAM é gravado no arquivo de paginação da partição em que o Windows está instalado, que o arquivo de paginação precisa estar no volume de inicialização para o recurso de despejo funcionar e que, se ele foi movido para outro volume, precisa voltar. Com o tipo de despejo padrão, Despejo automático de memória, e um arquivo de paginação em Tamanho gerenciado pelo sistema, o Windows dimensiona o arquivo de paginação para que um despejo de memória do kernel possa ser capturado na maior parte do tempo.

A própria caixa de diálogo de memória virtual avisa sobre isso: se você desativar o arquivo de paginação ou definir o tamanho inicial dele abaixo de um certo número de megabytes e ocorrer um erro do sistema, o Windows pode não registrar detalhes que ajudariam a identificar o problema. Sem esses detalhes, descobrir por que um jogo travou fica mais difícil.

Confira o quanto você está perto do teto

Abra o Gerenciador de Tarefas, vá para Desempenho e selecione "Memory" (memória). "Committed" (confirmada) mostra dois números: a carga de confirmação e, depois, o limite de confirmação. Se o primeiro chega perto do segundo enquanto você joga, você está perto do teto de que esta página trata, diga o que disser "In use (Compressed)" (em uso, compactada).

Dois guias da Microsoft dão limiares um pouco diferentes para essa proporção. O guia de desempenho citado acima chama qualquer coisa acima de 75% de perto de acabar; o guia atual da Microsoft para solucionar problemas de desempenho lista de 0 a 50% como saudável, de 60 a 80% como alerta e de 80 a 100% como crítico.

Para ver qual programa tem as promessas, a guia Detalhes tem uma coluna "Commit size" (tamanho de confirmação) para cada processo; Selecionar colunas a adiciona se ela estiver oculta. Se o Windows já ficou com pouca memória, ele registra o evento 2004 do Microsoft-Windows-Resource-Exhaustion-Detector no log do Sistema, com uma mensagem que cita os programas que mais consumiram memória virtual. Este comando do PowerShell lista os cinco últimos:

Get-WinEvent -FilterHashtable @{LogName='System'; ProviderName='Microsoft-Windows-Resource-Exhaustion-Detector'; Id=2004} -MaxEvents 5 | Format-List TimeCreated, Message

Se ele informar que nenhum evento foi encontrado, o log não tem nenhum evento desse tipo.

Qual deve ser o tamanho

Deixe-o em Tamanho gerenciado pelo sistema. O guia de dimensionamento diz que os arquivos de paginação são gerenciados pelo sistema por padrão, e que o tamanho certo depende da sua configuração de despejo de memória e da sua carga de confirmação de pico, é exclusivo de cada sistema e não pode ser generalizado. O Russinovich chamou as antigas fórmulas de múltiplos da RAM de inúteis pelo mesmo motivo.

Um arquivo de paginação gerenciado pelo sistema cresce sozinho. Quando a carga de confirmação passa de 90 por cento do limite, ele cresce até três vezes a sua RAM ou 4 GB, o que for maior, mas não mais do que um oitavo do volume, e só se o disco tiver o espaço livre. Mantenha algum espaço livre no drive que o guarda.

Há uma exceção documentada. No KB 4055223, listado para o Windows 10 e o Windows 11, a Microsoft descreve erros aleatórios de falta de memória em programas que alocam memória com frequência, que podem vir da demora enquanto um arquivo de paginação automático cresce. A solução alternativa dela é um tamanho personalizado, com um tamanho inicial de 1,5 vez a sua RAM, aumentado ainda mais se os erros continuarem. Isso contradiz a frase acima, de que o tamanho não pode ser generalizado, e também o Russinovich, então trate isso como a correção daquele único sintoma, e não como uma regra.

Para mudar a configuração, pressione Win+R e execute SystemPropertiesAdvanced. Em Desempenho, escolha Configurações..., abra a guia Avançado e escolha Alterar... em Memória virtual. A caixa de seleção do topo é Gerenciar automaticamente o tamanho do arquivo de paginação para todas as unidades. Abaixo dela, por unidade, ficam Tamanho personalizado, Tamanho gerenciado pelo sistema e "No paging file" (sem arquivo de paginação). "Set" (definir) aplica a escolha àquela unidade; depois, selecione OK e reinicie o PC.

Desgaste do SSD

O outro motivo dado para tirá-lo é o desgaste do SSD. O blog de engenharia do Windows 7 da Microsoft relatou, na telemetria de 2009, cerca de 40 leituras do arquivo de paginação para cada gravação, e concluiu que há poucos arquivos melhores que o arquivo de paginação para colocar num SSD. São números de 2009, então tome-os como o padrão, e não como os números de hoje.

Para ter uma escala num drive mais novo, a ficha técnica do 990 PRO da Samsung, de 2022, classifica o modelo de 1 TB para 600 TB gravados, com garantia limitada de cinco anos, o que vier primeiro. Distribuído por igual, isso dá cerca de 330 GB de gravações por dia durante cinco anos; essa divisão é nossa, e não da Samsung.

O que não ajuda

Relacionados

Esta página ajudou?

O que faltou, ou o que não funcionou? Lemos cada uma dessas respostas.

Se esta página não resolveu, escreva para nós — diga qual artigo você leu, e nós vamos corrigi-lo.