Gostaria de diminuir o tamanho do meu cache, porque tenho um disco lento e executo um sistema sem swap (é muito rápido assim). Tenho Vista x86 e 3 GB de RAM. O problema é que o Windows consome cerca de 1 GB de RAM para cache de disco (mostrado no Gerenciador de Tarefas em Memória Física -> Em Cache), o que deixa apenas 2 GB para aplicativos. Um pop-up muito irritante aparece sempre que o Windows pensa que está com pouca memória e, claro, os aplicativos travam quando a memória é usada. Mas ainda há 1 GB no cache!
Eu tentei o AnalogX Cache Booster, mas não fez nada, o uso da memória permanece o mesmo, os pop-ups de aviso estão nos mesmos níveis.
Responder1
Eu tenho... um sistema sem swap
Eu costumava pensar da mesma maneira. Desde então, aprendi que, no MS Windows, este é umruimidéia e pode realmenteferirdesempenho.
O Windows pensa na RAM mais como uma camada de otimização do disco rígido. Ele não quer esperar até que você precise trocar a RAM antes de paginá-la/trocá-la para o disco. Em vez disso, o Windows quer que tudo o que você coloca na RAM sejajáser paginado/trocado.
Dessa forma, quando o Windows precisar de RAM para outra coisa, ele poderá simplesmente usá-la. Essa estratégia funciona porque coloca as gravações (lentas) do disco nos pontos em que o computador está menos estressado, às custas de carregamentos de aplicativos um pouco mais lentos e talvez da paginação de algumas coisas que não são necessárias, em vez de no ponto em que o computador já está mais estressado e com pouca RAM.
É claro que, ao remover completamente o arquivo de paginação, você pode pensar que obtém o melhor dos dois mundos. No entanto, há muitos códigos no Windows que são otimizados assumindo o modelo de desempenho que acabei de descrever. É realmente melhor garantir que você tenha pelo menos tanto espaço de troca quanto RAM.
Responder2
Por padrão, o Vista (e posterior) x86 permitirá apenas 2 GB devirtualmemória para cada processo. Se um aplicativo precisar de mais, por exemplo 3 GB, você poderá aumentar isso em:
bcdedit /set IncreaseUserVa 3072
No entanto, isso só funcionará para executáveis vinculados ao sinalizador "reconhecimento de endereço grande". Os processos que executam outros exe ainda serão limitados a 2 GB.
A RAM real é alocada conforme necessário para os aplicativos e para o sistema.
Como este não parece ser o seu problema, para otimizar o uso da memória pode-se primeiroDesative o SuperFetch no Windows Vista:
O serviço SuperFetch no Windows Vista pré-carrega a memória do sistema com os aplicativos que você usa com mais frequência. Isso torna o lançamento desses aplicativos muito mais rápido, mas pode ser um comportamento indesejado para usuários ou usuários de ajustes de sistema.
Em segundo lugar, para controlar o tamanho do cache do disco,AnalogX Cache Boosteré uma ferramenta gratuita que pode ajustar o cache do disco rígido (nunca tentei), mas não tenho certeza se isso ajudará, tendo em vista as informações abaixo.
Conforme descrito emGuia de ajuste de memória do Windows Vista, os parâmetros de cache de disco residem no registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Memory Management
Alguns parâmetros importantes são:
DesativarPagingExecutivecontrola como os drivers de modo kernel inativos e o código do sistema podem ser liberados da RAM e paginados para o arquivo de paginação. Infelizmente, você não possui um arquivo de paginação, portanto o código do sistema nunca é trocado.
LargeSystemCachecontrola o tamanho do cache do sistema de arquivos da seguinte maneira:
- 0 (padrão) um cache do sistema de arquivos de tamanho padrão é alocado (menos de 10 MB de RAM)
- 1 permite o uso de um grande cache do sistema de arquivos (até a quantidade total de RAM menos 4 MB!)
Se esse valor for zero no seu caso, o cache do disco já é o menor possível. Se o desempenho obtido não for satisfatório, você deverá investir em hardware: mais RAM ou um disco rígido mais rápido. Aumentar a RAM de 3 GB para 4 GB só proporcionará um aumento de (1 GB - memória de vídeo), a menos que você também passe para uma versão de 64 bits do Windows.
Responder3
Um pop-up muito irritante aparece sempre que o Windows pensa que está com pouca memória e, claro, os aplicativos travam quando a memória é usada.
Este pop-up não tem nada a ver com RAM e nada a ver com o cache do Windows. Isso significa que você está esgotando o limite de commit. Este é um limite para a quantidade de espaço de endereço virtual privado que seus processos podem alocar.
Existem três maneiras de aumentar seu limite de commits: 1) executar menos ou menores coisas de uma vez; 2) aumentar a RAM; 3) aumente o tamanho do arquivo de paginação. Isso ocorre porque o limite de confirmação é simplesmente o tamanho da RAM mais o tamanho atual do arquivo de paginação.
Se você habilitasse seu arquivo de paginação da maneira que os designers do sistema operacional pretendiam, você não veria essas mensagens e seus programas não travariam.
E apesar do que CausingUnderflowsEverywhere disse em seu comentário, às vezes você precisa de um arquivo de paginação para permitir que os programas aloquem a memória virtual necessária,mesmo que haja bastante RAM disponívele mesmo que o arquivo de paginação possa não ser realmente usado. Por que, veja minhas respostasaquieinsira a descrição do link aquiaqui.
nota: a maior parte da RAM "armazenada em cache" relatada pelo Gerenciador de Tarefas ainda está "Disponível"; o cache do SuperFetch realmente não "usa" RAM. O "cache" não é o que está causando o seu problema. A falta de um arquivo de paginação é.