1 grande parte do seu uso de memória alta (2 GB) vem de um alto uso de Tabela de páginas .
Paraverquaisprocessosousam,instaleoWindowsPerformanceToolkitque
wpr.exe -start ReferenceSet -filemode && timeout 5 && wpr.exe -stop C:\MemUsage.etl
Abra o MemUsage.etl com o Windows Performance Analyzer (WPA.exe), expanda a entrada de memória
arrasteesolteográficoResidentSetdalistadegráficosdaesquerdaparaopaineldeanálise:

Agora,movaacolunaPageCategoryparaoladoesquerdoeexpandaaPageTableentry:

Aquivocêvêosprocessosquetêmousodealtapagetable.Nositecorreto(depoisdalinhaazul),vocêvêousodamemóriadatabeladepáginasemMBparacadaprocesso.
Alémdisso,ousocombinado(não)dopoolpaginadoédeaproximadamente2GB.
poolmon ( C:\Program Files (x86)\Windows Kits\Tools\x64\poolmon.exe ), classifique os dados por meio de P após o tipo de conjunto, de forma que o paginado não paginado / da próxima vez esteja no topo e através de B depois dos bytes, para ver a tag que mais utiliza a memória.
Agora veja qual pooltag usa a maior parte da memória, como mostrado aqui:

Agoraabraumpromptdocmdeexecuteocomandofindstr.Parafazerisso,abraopromptdocmdedigite"cd C: \ Windows \ System32 \ drivers", sem aspas. Em seguida, digite "findstr / s __ . ", onde __ é a tag (nome mais à esquerda em poolmon). Faça isso para ver qual driver usa essa tag:

Agora,váparaapastadedrivers(C:\Windows\System32\drivers)ecliquecomobotãodireitodomousenodriveremquestão(intmsd.sysnoexemplodeimagemacima).CliqueemPropriedades,váparaaguiadetailsparaencontraronomedoproduto.Procureumaatualizaçãoparaesseproduto.
Corrigirosdoisproblemaspodelevarcercade4GBdevolta.
Combasenasuacapturadetelaemstackoverflow,4tags(VoSM,FILE,NtfxeProc)quepertencemàsfunçõesdoWindows.
Copie/coleestetextoemumnovoarquivotxterenomeie-oparaPoolTagLeak.wprp
<?xmlversion="1.0" encoding="utf-8"?>
<WindowsPerformanceRecorder Version="1.0" Author="MagicAndre1981" Copyright="MagicAndre1981" Company="MagicAndre1981">
<Profiles>
<SystemCollector Id="SystemCollector" Name="NT Kernel Logger">
<BufferSize Value="1024" />
<Buffers Value="1024" />
</SystemCollector>
<SystemProvider Id="SystemProvider">
<Keywords>
<Keyword Value="Pool" />
</Keywords>
<Stacks>
<Stack Value="PoolAllocation" />
<Stack Value="PoolAllocationSession" />
</Stacks>
<PoolTags>
<PoolTag Value="VoSM"/>
<PoolTag Value="File"/>
<PoolTag Value="Ntfx"/>
<PoolTag Value="Proc"/>
</PoolTags>
</SystemProvider>
<Profile Id="PoolUsage.Verbose.File" Name="PoolUsage" Description="Pool usage Tag 'Leak' " LoggingMode="File" DetailLevel="Verbose">
<Collectors>
<SystemCollectorId Value="SystemCollector">
<SystemProviderId Value="SystemProvider" />
</SystemCollectorId>
</Collectors>
</Profile>
<Profile Id="PoolUsage.Verbose.Memory" Name="PoolUsage" Description="Pool usage Tag 'Leak'" Base="PoolUsage.Verbose.File" LoggingMode="Memory" DetailLevel="Verbose" />
</Profiles>
</WindowsPerformanceRecorder>
Agora, execute wpr.exe -start C:\PoolTagLeak.wprp && timeout 600 && wpr.exe -stop C:\PoolusageUsage.etl e tente reproduzir novamente o uso.
Arrastar & Elimine o Pool Graph para o painel de análise, ordene as colunas para Type , Pooltag , Stack .
AgoraváparaAIFO(alocadodentro,liberadodoladodefora,entãoesteéumpossívelvazamento),encontresuas4tagseexpandaapilhaparaverquaisfunçõesestatagusa.Combasenosnomesdasfunções,vocêpodevera"causa". Na minha demonstração, o Thre tag (Thread) é usado pelo AVKCl.exe da G-Data porque ele inicia vários threads. Procure atualizações de driver / programa para corrigi-lo.


