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

62

Como alguém diagnostica / descobre problemas relacionados à memória, se o Gerenciador de Tarefas parece não estar relatando corretamente?

Preciso ter um vazamento de memória ou algo assim - estou usando 75% dos meus 12 GB de memória, mas as listagens dos gerenciadores de tarefas do uso de memória dos processos não estão aumentando (sim, a opção "Mostrar processos de todos os usuários" está marcada )

Parece que esse uso de memória "fantasma" cresce em relação a quanto tempo o sistema está ativo. Isso mostra que existem 118 processos totais. Além dos 5 primeiros, todos eles têm menos de 50 MB.

O processo principal é o Firefox, usando 2,6 GB. Adobe Premiere em 900 MB. Recipiente de plug-in a 300 MB. Lua pálida a 275 MB. Explorer.exe em 94 MB.

Como no mundo posso encontrar o que está consumindo o resto da minha memória? Parece que o Gerenciador de Tarefas não está vendo tudo o que está sendo usado. Talvez haja algum tipo de vazamento de memória? Ou os programas não estão liberando a memória usada corretamente?

Relatórios do Resource Monitor (clique para uma versão ampliada):

Impressão do Monitor de Recursos

NOTA:

  1. Como minha unidade principal do sistema operacional é um SSD, o SuperFetch está desativado no meu sistema.
  2. E eu entendo o princípio de que o carneiro não utilizado é o carneiro "desperdiçado", por assim dizer. No entanto, quando vejo meu uso de memória quase usado para aumentar a capacidade, ele me impede de executar / carregar programas subseqüentes (por minha própria preocupação) e até me envia para a tarefa de encerrar muitos computadores (com pouco efeito na redução do uso de memória, pelo menos visivelmente e dentro de um curto período de tempo).
  3. Quando a memória fica cheia, eu odeio ver o arquivo de página de 1 GB no meu SSD expandir para o limite de 6 GB que eu estabeleci, e eu "suando" com o conhecimento de que meu SSD "ruim" provavelmente está se transformando em pó, já que o Windows pesadamente / vira-se desenfreado para usá-lo como um cartão de memória de pleno direito. (Nessa nota, devo limitar apenas o arquivo de paginação a 1 GB estático?)
Coldblackice
fonte
4
apenas uma nota de rodapé: a RAM usada não é uma coisa ruim por si só. cache inteligente de coisas muitas vezes acelera as coisas. se você não tiver um problema como "omg, o programa xyz inicia tão lento que eu mal consigo aguentar porque ele tem que jogar fora outras coisas do ram" .. então pode não ser um problema.
akira
Obrigado, mas como o SuperFetch está desativado no meu sistema (com a unidade principal do sistema operacional SSD), a questão é diferente. Atualizando a pergunta original.
Coldblackice
@ Coldblackice Só porque a resposta (não aceita) não ajuda você não significa que não é a mesma pergunta. O OP da outra pergunta chegou a dizer que alterar o SuperFetch não ajudava. :)
Ƭᴇcʜιᴇ007
É verdade, mas não é a resposta correta neste caso, dando necessidade de outra pergunta. Pergunta atualizada para refletir esse específico.
Coldblackice

Respostas:

58

Geralmente, você pode ter uma ideia melhor do que está consumindo sua memória com ferramentas como o RamMap .

insira a descrição da imagem aquiClique para ampliar

Freqüentemente, a memória pode ser usada por arquivos mapeados na memória que foram inseridos na RAM para aumentar o desempenho.

Anote a coluna Ativa no RamMap. Essa é a memória que atualmente está sendo utilizada. Os indicadores referentes à memória livre geralmente podem ser enganosos. Isso inclui ferramentas do Windows, como o Gerenciador de tarefas.

Outras informações


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

No entanto, quando vejo meu uso de memória quase usado para aumentar a capacidade, ele me impede de executar / carregar programas subseqüentes (por minha própria preocupação) e até me envia para a tarefa de encerrar muitos computadores (com pouco efeito na redução do uso de memória, pelo menos visivelmente e dentro de um curto período de tempo).

Seu raciocínio está perfeitamente bem. Mas, a menos que você esteja enfrentando problemas devido a situações de pouca memória, evite esta prática. O sistema operacional deve lidar com essa tarefa e liberar dados para o arquivo de paginação quando a memória física for necessária.

Possivelmente, você também está usando o indicador errado para a sua prática. Você deseja ter um olho na sua cobrança de confirmação ( terminologia do Process Explorer ).

insira a descrição da imagem aqui

A carga de confirmação é a soma de toda a memória usada. Você pode ver na imagem, também há um limite para isso. Esse limite é o tamanho da minha memória física + o tamanho do meu arquivo de paginação. Se esse limite fosse atingido, isso seria um problema.

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

Quando a memória fica cheia, eu odeio ver o arquivo de página de 1 GB no meu SSD expandir para o limite de 6 GB que eu estabeleci, e eu "suando" com o conhecimento de que meu SSD "ruim" provavelmente está se transformando em pó, já que o Windows pesadamente / vira-se desenfreado para usá-lo como um cartão de memória de pleno direito. (Nessa nota, devo limitar apenas o arquivo de paginação a um statci de 1 GB?)

Na minha opinião, há várias coisas erradas aqui. Em geral, deve ser fortemente desencorajado definir limites no tamanho do arquivo de paginação. Mark Russinovich explica isso nos vídeos que eu vinculei acima (muito melhor do que eu jamais pude).

Somente coisas ruins podem vir disso. O que o Windows deve fazer quando precisa liberar mais de 6 GB de dados no arquivo de paginação, mas você o limita em 6 GB? Essa é uma questão importante.

Deixe o Windows manipular o arquivo de paginação. A única coisa que eu aconselho você a fazer é mover o arquivo de paginação para longe do seu SSD. Tom Wijsman explica isso de maneira excelente em sua postagem no blog Maximizando a vida útil do seu SSD , que eu recomendo que você leia.

Der Hochstapler
fonte
11
Ahhh, entendo. Sim, o uso da memória "fantasma" parece vir da categoria Arquivo Mapeado (e, especificamente, da coluna Em espera). Portanto, o Gerenciador de tarefas não informa que esses arquivos estão sendo mapeados, apenas que a memória está sendo usada?
Coldblackice
2
Obrigado pela ajuda e adendo. Quanto à sua nota sobre o arquivo de paginação e os SSDs - ouvi exatamente o oposto (e, portanto, por que o tenho do jeito que está). Não estou dizendo que tenho o "direito" definitivo de qualquer maneira, mas li que o arquivo de paginação é o melhor em um SSD por causa dos benefícios de velocidade do SSD. E quanto a degradar a vida do SSD, ouvi dizer que isso é insignificante, desde que o arquivo de paginação seja limitado.
Coldblackice
11
Quanto a permitir que o Windows o gerencie - o Windows quer permitir que meu arquivo de paginação expanda até 18 GB! Infelizmente, não posso permitir essa quantidade de espaço no meu SSD para paginação. Eu tinha presumido que 12 GB de memória seriam mais do que suficientes para o Windows trabalhar, com a qual, estranhamente, o Windows parece absorver rapidamente o máximo possível, aparentemente armazenando em cache tudo o que puder colocar :) Portanto, temo que, se eu deixar o arquivo de paginação que deseja, ele encontrará arquivos suficientes para mapear na memória para fazer uma ponte rápida para o preenchimento completo do arquivo de paginação.
Coldblackice
11
@ Coldblackice: Me desculpe, eu não poderia convencê-lo. Por favor, tire apenas uma coisa disso, existem muito poucas pessoas que têm um entendimento adequado do gerenciamento de memória do Windows. No entanto, muitas pessoas são rápidas em oferecer recomendações (obviamente, inclusive eu). Pergunte a si mesmo, se limitar o tamanho do arquivo de paginação é útil, por que não é o padrão? Além disso, é muito improvável que um arquivo mapeado na memória seja liberado no arquivo de paginação, porque ele já existe em um arquivo (aquele que foi mapeado na memória). Portanto, seu medo a esse respeito é, muito provavelmente, equivocado.
Der Hochstapler
11
@ Oliver Salzburg, uma coisa a ter em mente é que o Windows 7 foi projetado para ferrugem, não SSDs e 1-4 GB de RAM, não 12. Não é evangelho, deve ser óbvio que há momentos em que o tamanho único Os padrões adequados para todos não se aplicam, e a solução não é continuar advogando para não pensar nisso e nunca tocar neles, independentemente do momento em que alguém deseja entender mais profundamente um problema. Isso é bom para noobs, mas não para todos.
precisa saber é o seguinte
2

No meu caso, o motivo do alto uso de memória foi uma máquina virtual hyper-v para a qual eu tinha as configurações de memória dinâmica ativadas para RAM.

A ferramenta RamMap me ajudou a localizar a causa raiz.

Primeiro, notei no RamMap que o Driver Locked consumia mais de 29 GB da minha RAM de 32 GB. Em seguida, encontrei um artigo que explicava que o uso de memória alta bloqueada pelo driver pode ser causado pela memória dinâmica HyperV ativada, e acabei de confirmar isso.

Dragan Nikolic
fonte
0

Se você ver que o snap não está mostrando todo o processo, o processo mostrado está consumindo 5,8 GB de memória. pelo snap mostrado, mostra que há muitos programas desnecessários em segundo plano em execução. O uso do msconfig remove os programas de inicialização desnecessários e também aumenta a sua memória virtual (1,5 vezes a sua memória física).

tiki
fonte
Como você aumenta sua memória virtual ? E qual é o raciocínio por trás do fator 1,5?
Der Hochstapler
Embora o aumento da memória virtual (aumentando o tamanho do arquivo de paginação) seja valioso, isso pode levar a muitas paginações, o que tornará a máquina lenta. Se todos os programas desnecessários foram impedidos de serem executados, a melhor coisa a fazer é instalar mais RAM.
Fran
Para aumentar sua memória virtual, siga o caminho: Vá para Propriedades do MEU COMPUTADOR -> selecione "Configurações avançadas do sistema" -> vá para a guia 'avançar' -> selecione as "configurações" em DESEMPENHO -> vá para a guia avançada -> em Memória virtual Selecione Alterar-> Selecione Tamanho personalizado para fornecer min. e max. tamanho ...... É recomendável aumentar a memória virtual em até 1,5x da sua memória física (por exemplo, se você tiver 4 GB de RAM, poderá atribuir até 6 GB de memória virtual). Mas a sugestão de FRANs também está correta. Tente minimizar seu aplicativo de plano de fundo desnecessário.
18712 tiki
Portanto, está provado que é melhor aumentar ou diminuir o arquivo de paginação, em termos de desempenho geral bruto? O 1.5x é realmente necessário?
Coldblackice
0

Você pode experimentar o RAMMAP do Sysinternal, mas mostra o uso da memória de uma maneira diferente do Gerenciador de Tarefas e do Gerenciador de Recursos e, portanto, não é muito útil.

O Gerenciador de tarefas e o Monitor de recursos não mostram o cache e o tamanho do arquivo. Faz parte da parte "Em uso" da memória (consulte o Monitor de recursos). O cache do arquivo pode crescer para um tamanho MUITO grande, especialmente quando se mantém o computador funcionando por horas. O uso geral da memória do programa aumenta com o passar do tempo, como resultado de um crescente cache de arquivos e vazamentos de memória. Alguns programas simplesmente têm um péssimo gerenciamento de memória.

Uma maneira de minimizar o uso de memória é reduzir a quantidade de processos. (Por que 118 processos estão em execução? Por que você tem várias instâncias do Explorer.exe em execução?)

Existe um programa que ajuda você a reduzir regularmente o uso de memória e recolher regularmente o cache de arquivos. (CLEANMEM do PcWinTech). Reduzir o uso de memória dessa maneira também reduz ou elimina a necessidade de o Windows gravar dados da memória no arquivo de troca (no seu SSD). Assim, aumenta a vida útil do seu SSD. A redução do uso de memória também disponibiliza mais memória "Em espera", permitindo que o Windows pré-carregue mais arquivos na memória em espera, acelerando o sistema.

Willy2
fonte
11
Você é afiliado a este software? O último parágrafo parece que o marketing fala comigo, e vejo que você está recomendando a mesma coisa em 2 postagens antigas.
Arjan
11
Sim, ajudei o autor do programa a melhorar o programa. Mas não tenho motivos (financeiros) para promover o programa porque o programa é gratuito.
precisa saber é o seguinte
0

O RAMMap mostrou que o C:\Windows\SoftwareDistribution\DataStore\DataStore.edbarquivo mapeado estava desperdiçando 400 Mb da minha preciosa RAM de 4 Gb.

Além disso, o Windows Update estava constantemente diminuindo a velocidade do sistema no processo de atualização desse arquivo enorme.

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

Consulte o PC Boots e, em seguida, grava um arquivo gigante datastore.edb que torna o computador lento para uma possível resolução.

Vadzim
fonte