Otimizando o tamanho do arquivo de paginação: gostaria de esclarecer sobre o Peak Commit e minha RAM física?

0

Eu quero otimizar o tamanho do arquivo de paginação para atender às minhas necessidades reais. E eu quero seguir a fórmula sugerida por Mark Russinovich: O mínimo deve ser Peak Commit menos Physical RAM, e o Maximum deve ser o dobro disso.

Para ter certeza de que faço tudo certo, gostaria de esclarecer o seguinte:

1) Este número em vermelho é o Peak Commit mencionado pelo Sr. Russinovich?

Na tela está a janela Informações do sistema do Explorador de processos

2) No Painel de controle > Sistema diz que minha RAM instalada é de 4 GB e apenas 2,45 GB é utilizável . E, obviamente, no Gerenciador de Tarefas, minha memória física total também é de 2509 MB. Isso é porque meu sistema operacional é de 32 bits. Então, eu entendi corretamente que este 2509 (não esses 4 GB) é o número que eu deveria usar para o meu cálculo de tamanho do arquivo de paginação?

Eu sei que isso pode ser uma coisa tola de se fazer, mas como eu já disse, quero ter certeza de que estou certo.

Muito obrigado.

    
por Ahu Lee 07.02.2018 / 04:49

1 resposta

1

Você, sem dúvida, está se referindo a " Empurrando os limites do Windows: Memória Virtual " por Mark Russinovich.

  1. Sim, esse é o número.
  2. Sim, você só tem 2,5 GB de RAM utilizável (aproximadamente - não há necessidade de excesso de precisão aqui).

No entanto, você escreve sobre "fazer certo". Devo salientar que o artigo de Mark é sobre "empurrar os limites", e essa fórmula lhe dá um mínimo absoluto para o tamanho do arquivo de paginação. Se você quer que seu sistema tenha um bom desempenho, você não quer "empurrar os limites".

Não há nenhuma recomendação nesse artigo que diga que você deve tornar as configurações pequenas. Só que você pode se safar se realmente quiser. (Assumindo que você nunca precise realmente de mais memória comprometida).

(E você pode precisar de mais. Lembre-se de que esse "pico" que você viu aqui é apenas o pico durante a execução do Process Explorer. Só é significativo se você executar a carga de trabalho máxima do aplicativo durante Dessa vez, isso não significa apenas iniciar todos os aplicativos que você acha que já terá em execução ao mesmo tempo. Você também precisa fazer com que cada aplicativo use a memória privada máxima (memória "confirmada") que você sempre solicitará. Isso é uma coisa difícil de configurar e testar. E quem pode dizer que você nunca adicionará outro aplicativo à sua carga de trabalho típica? Portanto, a informação que você recebe com ferramentas de monitoramento não garante que você nunca precisará de mais. )

Observe que, se acontecer de você realmente atingir esse pico novamente, e ter o arquivo de paginação definido para o min calculado dessa maneira, não haverá espaço na RAM para RAM usada pelos arquivos mapeados - como arquivos de código, como exe e dll's. (Isso ocorre porque a contagem de memória virtual "confirmada" não inclui páginas de código ou outras páginas com suporte em arquivos mapeados.) Como o código precisa estar na RAM para ser executado, isso é um problema.

Ok, desde que você está habilitando a expansão do arquivo de paginação, não é um problema de "showstopper". Mas certamente será um sucesso no desempenho.

Portanto, a menos que você esteja tentando, por algum motivo acadêmico, demonstrar o tamanho mínimo absoluto do arquivo de paginação que não resultará em falhas do aplicativo, independentemente dos problemas de desempenho, eu não faria isso dessa maneira. (Não consigo pensar em uma razão prática para fazer isso.)

Se você realmente deseja reduzir as coisas para um mínimo prático , ou seja, sem restringir a RAM disponível para o código, basta configurar o tamanho mínimo do arquivo de paginação para a taxa de confirmação máxima observada. Isso significa que ainda haverá RAM disponível para o código, mesmo se os aplicativos e o SO tiverem criado muita memória comprometida (e referenciada a todos).

Também não há um motivo para limitar o tamanho máximo a apenas 2x o min, a menos que você esteja muito preocupado com o uso do disco.

Você vê, não faz mal (além do uso de espaço em disco) ter um arquivo de paginação maior do que o sistema jamais precisará. Em particular, um arquivo de paginação maior do que o necessário não "atrairá" mais paginação para ele. E não há vantagem em torná-lo apenas grande o suficiente (novamente, além do uso de espaço em disco). Então, por que se incomodar? isto é, você não está "otimizando" nada, exceto o espaço em disco ocupado por este exercício.

Dado que ficar sem limite de confirmação pode causar falhas de aplicativo (e, portanto, perda de dados) e, em casos raros, até travamentos do sistema, eu não estaria tão interessado em tornar meu arquivo de paginação o menor possível.

Por outro lado, se o sistema tiver que gravar muito no arquivo de paginação - e em um sistema Windows 7 com apenas 2.5GB de RAM utilizável, imagino que seja - ter um arquivo de paginação que seja consideravelmente maior do que o sistema nunca use vai acelerar as coisas. Por quê? Porque o algoritmo de alocação de espaço que é usado para o arquivo de paginação pode ser muito mais rápido se houver muito espaço livre.

Por causa disso, eu gosto de ver o contador do PerfMon para uso do arquivo de paginação ficar abaixo de 25%.

    
por 08.02.2018 / 12:22