2012-06-17 11:40:44 +0000 2012-06-17 11:40:44 +0000
64
64

Como é que encontro o que está a devorar toda a memória do meu sistema? (não SuperFetch)

Como é que se diagnostica/descobre problemas relacionados com a memória, se o Gestor de Tarefas parece não reportar correctamente?

Tenho de ter uma fuga de memória ou algo do género - estou a 75% de utilização dos meus 12 GB de memória, mas os Gestores de Tarefas listam a utilização da memória dos processos que não estão a somar (sim, “Mostrar processos de todos os utilizadores” está verificado).

Parece que esta utilização de memória “fantasma” cresce em relação a quanto tempo o sistema está a funcionar. Mostra que existem 118 processos no total. Além dos 5 principais, todos eles têm menos de 50 MB.

O processo principal é o firefox, usando 2.6 GB. Adobe Premiere a 900 MB. Plugin-container a 300 MB. Lua Pálida a 275 MB. Explorer.exe a 94 MB.

Como posso encontrar o que está a gastar o resto da minha memória? Parece que o Task Manager não está a ver tudo o que está a ser utilizado. Talvez haja algum tipo de fuga de memória? Ou os programas não estão a libertar a memória usada correctamente?

Resource Monitor reports (clique para uma versão maior):

NOTA:

  1. Como a minha unidade de SO principal é um SSD, o SuperFetch está desactivado no meu sistema.
  2. E eu entendo o princípio de que o ram não utilizado é um ram “desperdiçado”, por assim dizer. No entanto, quando vejo a minha utilização de memória quase usada até ao pico da capacidade, isso impede-me de executar/carregar programas subsequentes (da minha própria preocupação), e envia-me mesmo para a tarefa de encerrar muitos (com pouco efeito na diminuição da utilização de memória, pelo menos de forma perceptível e num curto espaço de tempo).
  3. Quando a memória se enche, detesto ver o ficheiro de 1GB de página no meu SSD expandir até ao limite de 6GB que defini, e eu “suar” com o conhecimento de que o meu “pobre” SSD está provavelmente a ser reduzido a pó à medida que o Windows se transforma pesadamente/rampante para o utilizar como um stick de memória completo. (Nesse ponto, devo apenas colocar uma capa dura no ficheiro de página para um 1GB estático?)

Respostas (5)

60
60
60
2012-06-17 12:17:17 +0000

Você pode normalmente obter uma melhor visão do que está usando sua memória com ferramentas como RamMap .

clique para ampliar

Frequentemente, a memória pode ser usada por arquivos mapeados de memória que foram puxados para a RAM para aumentar o desempenho.

Tome nota da coluna Active* no RamMap. Esta é a memória que está actualmente a ser utilizada. Os indicadores relativos à memória free podem muitas vezes ser enganadores. Isto inclui ferramentas Windows como o Task Manager.

Informação adicional


Eu também queria abordar alguns pontos adicionais da sua pergunta.

No entanto, quando vejo que a minha utilização de memória está quase a atingir o pico de capacidade, isso impede-me de executar/carregar programas subsequentes (da minha própria preocupação), e envia-me mesmo para a tarefa de encerrar muitos (com pouco efeito na diminuição da utilização de memória, pelo menos de forma perceptível e num curto espaço de tempo).

O seu raciocínio é perfeitamente correcto. Mas, a menos que esteja a ter problemas devido a situações de pouca memória, deve abster-se desta prática. O sistema operativo deve lidar com esta tarefa e descarregar os dados para o ficheiro de paging quando é necessária memória física.

Possivelmente, também está a utilizar o indicador errado para a sua prática. Você quer ter um olho no seu Commit Charge Process Explorer terminologia).

A taxa de commit é a soma de toda a memória utilizada. Pode ver na imagem do ecrã, existe também um limite para ela. Esse limite é o tamanho da minha memória física + o tamanho do meu ficheiro de paginação. Se esse limite fosse atingido, isso seria um problema.

O que nos leva ao nosso próximo tópico.

Quando a memória se enche, odeio ver o ficheiro de 1GB de página no meu SSD expandir para o limite de 6GB que defini, e eu “suar” com o conhecimento de que o meu “pobre” SSD está provavelmente a ser reduzido a pó à medida que o Windows se transforma pesadamente/rampante para o usar como um stick de memória completo. (Nesse sentido, devo limitar o ficheiro de página a um statci 1GB?)

Na minha opinião, há aqui várias coisas erradas. Em geral, deve ser fortemente desencorajado estabelecer limites para o tamanho do ficheiro de paginação. Mark Russinovich explica isto nos vídeos que liguei acima (muito melhor do que alguma vez consegui).

Só coisas más podem advir disso. O que é suposto o Windows fazer quando precisa de descarregar mais de 6GB de dados para o ficheiro de paging, mas limitou-o a 6GB? Isso* é um grande problema.

Deixar o Windows tratar do ficheiro de paging. A única coisa que lhe aconselho vivamente a fazer é mover o ficheiro de paging para longe do seu SSD. Tom Wijsman explica isto excelentemente no seu post no blog Maximizando a vida útil do vosso SSD , que eu recomendo que leiam.

2
2
2
2018-03-09 11:52:05 +0000

No meu caso a razão para o uso de alta memória foi uma máquina virtual hiper-v para a qual eu tinha as configurações de memória dinâmica habilitadas para RAM. RamMap ferramenta me ajudou a localizar a causa raiz.

Primeiro, eu notei no RamMap que o Driver Locked consumiu mais de 29GB da minha RAM de 32GB. Depois, encontrei um artigo que explicava que o uso de memória alta bloqueada pelo Driver Locked pode ser causado pela memória dinâmica HyperV activada, e depois acabei por confirmar isso.

0
0
0
2015-02-19 07:39:14 +0000

O RAMMap mostrou que o C:\Windows\SoftwareDistribution\DataStore\DataStore.edb mapped file wasting 400 Mb wasting of my precious 4 Gb RAM.

Além disso o Windows Update estava constantemente a abrandar o sistema em processo de actualização desse enorme ficheiro.

Isso pode ser um problema comum para muitos PCs de gama baixa.

Veja PC Boots then writes giant datastore.edb file slowing the computer down for possible resolution.

0
0
0
2014-05-04 05:05:49 +0000

Pode experimentar o RAMMAP da Sysinternal mas este mostra a utilização de memória de uma forma diferente do Task Manager & Resource Manager e, portanto, não é muito útil.

Task Manager & Resource Monitor não mostram o filecache e o tamanho do mesmo. Faz parte da parte “Em uso” da memória (Ver Monitor de Recursos). A cache de ficheiros pode crescer até um tamanho MUITO grande, especialmente quando se mantém o computador a funcionar durante horas. A utilização global da memória do programa aumenta com o passar do tempo, como resultado de uma crescente cache de ficheiros e fugas de memória. Alguns programas têm simplesmente uma má gestão de memória.

Uma forma de minimizar a utilização de memória é reduzir a quantidade de processos. (Porque estão 118 processos em execução? Porque tem múltiplas instâncias do Explorer.exe a correr ?)

Existe um programa que o ajuda a reduzir regularmente o uso de memória e a comprimir regularmente a cache de ficheiros. (CLEANMEM da PcWinTech). Reduzir o uso de memória desta forma também reduz ou até elimina a necessidade do Windows gravar dados da memória no arquivo swap (no seu SSD). Assim, aumenta o tempo de vida útil do seu SSD. A redução do uso de memória também torna disponível mais memória “Standby”, permitindo ao Windows pré-carregar mais ficheiros na memória Standby, acelerando o seu sistema.

0
0
0
2012-06-17 13:15:52 +0000

Se vir que o snap não mostra todo o processo e o próprio processo mostrado está a tirar 5,8 GB de memória. do snap mostrado mostra que há muito programa de fundo desnecessário a correr. Usando o msconfig remova os programas de inicialização desnecessários e também aumente sua memória virtual (1,5 vezes a sua memória física).