Vazamento de memória do Windows 10 - Tags (poolmon) FMic e Irp - Pool não paginável de 5,7 GB

Vazamento de memória do Windows 10 - Tags (poolmon) FMic e Irp - Pool não paginável de 5,7 GB

Tenho notado um uso de memória extremamente alto ultimamente. Com apenas o Chrome com 20 guias abertas, recebo 13,5/16 GB de memória em uso. O gerenciador de tarefas relata que o Chrome usa apenas cerca de 3 GB de memória. Todos os processos restantes relatados no Gerenciador de Tarefas combinados geram menos de 1 GB de memória adicional, já que a maioria deles usa entre 10 MB e 50 MB.

Usei o RamMap para obter mais detalhes e descobri que o pool não paginado é extremamente alto, com 5,7 GB. Aqui está uma imagem deRamMap.

Eu usei poolmone descobri que duas coisas estão consumindo uma quantidade enorme do pool não paginável. Aqui está umimagem de poolmon.

De acordo com uma pesquisa de tags do Google eessa lista aqui, é para isso que servem essas 2 tags:

  • FMic - fltmgr.sys - estrutura IRP_CTRL
  • Irp - desconhecido - Io, pacotes IRP

Mas agora cheguei a um beco sem saída. Já vi outras perguntas semelhantes, mas nenhuma que trate dessas tags. O problema de outras pessoas geralmente vem de um driver e elas podem simplesmente atualizá-lo. Mas neste caso, não sei como consertar isso.

Eu encontrei o arquivofltMgr.sysemC:\Windows\System32\drivers, mas parece que é coisa da Microsoft. SobPropriedades -> Detalhes, seu nome é "Sistema operacional Microsoft Windows" e sua descrição de arquivo é "Gerenciador de filtros do sistema de arquivos Microsoft". ou seja, este não é apenas um driver que posso atualizar.

Quanto aoIRPetiqueta, não tenho ideia.

Alguma sugestão? Para onde posso levá-lo a partir daqui e o que posso fazer?

EDITAR 03/03/18: Eu não possuo o Killer NIC.

Eu usei o xperf para gravar e conseguitão longe. Não tenho certeza para onde ir a partir daqui, como alternativa, eu poderia fazer upload do arquivo .etl, embora seja muito grande, então não tenho certeza de onde. Deixe-me saber se o upload será útil.

Talvez sejam 40 minutos após a reinicialização e já tenha um pool não paginável de 517 MB.

EDITAR 03/04/18 #1: pool não paginável atualmente com 1 GB após um dia. Parece que aumenta a uma taxa de aproximadamente 1 GB por dia. A saída de fltmcpode ser encontradaaqui.

Quanto aIRP- Não utilizo antivírus ou programas de backup, a não ser que conte o Windows Defender. No entanto, eu uso um link simbólico da minha unidade C: (SSD) para minha unidade F: (HDD) para as pastas de cache do Google Chrome e do Skype, pois elas estavam causando gravações de 20 GB por dia no disco, o que eu não queria. meu SSD. Este cache está funcionando bem e sendo gravado em meu HDD perfeitamente, não acho que isso causaria falha de E/S.

Eu também tenho um array Raid 0 de 2 HDDs (1 TB cada) criado através dos espaços de armazenamento integrados do Windows, não através do BIOS ou algo parecido. Não creio que isso possa ter alguma coisa a ver com oIRPcoisa também?

Por fim, também gravo minha jogabilidade quando jogo videogame. Ele é executado automaticamente em segundo plano assim que inicio um jogo, usando um cliente chamado Plays.TV. Mas, novamente, isso foi bem-sucedido e não vejo por que a solicitação de E/S seria emitida, mas não concluída. Os vídeos terminam de ser gravados assim que saio do jogo.

EDITAR 03/04/18 #2: usei typeperf "Memory\Pool Nonpaged Bytes" -si 20 -o npptracker.csve representei graficamente os resultados conforme sugerido por @HelpingHand. Também anotei o gráfico com todos os eventos, para que você possa ver qual ação corresponde aos bytes não pagináveis ​​saltando para cima ou para baixo.Aquié o gráfico. Nele, você pode ver algumas coisas que não reconhece:

  • PUBG- Abreviação de PlayerUnknown's BattleGrounds, é um videogame que joguei recentemente
  • Reproduz.TV- cliente de gravação de vídeo que inicia a gravação automaticamente assim que entro no jogo e para de gravar quando saio. Ele também grava metadados de alguns jogos e os coloca na linha do tempo do vídeo como um marcador, por exemplo, verei marcadores na linha do tempo nos momentos em que matei alguém. Esses metadados são registrados em um.frameletsarquivo.
  • Twitch.tv- um site para streaming
  • Bot para um jogo de navegador- apenas um bot que faz solicitações HTML. Ele funciona apenas por cerca de 30 a 60 minutos por vez e estou bastante confiante de que não tem efeito.

Como você pode ver no gráfico, usei o Xperf com o seguinte comando por cerca de 7 minutos:Xperf -on PROC_THREAD+LOADER+POOL -stackwalk PoolAlloc+PoolFree+PoolAllocSession+PoolFreeSession -BufferSize 1024 -MinBuffers 256 -MaxBuffers 256 -MaxFile 1024 -FileMode Circular

Isso produziu um 1GB.etlarquivo que eu compactei e carregueiaqui (80MB).

Finalmente, usei poolmonnovamente cerca de 2 a 3 minutos depois de parar xperf. Esqueci de colocar no gráfico da linha do tempo.Aquié uma imagem do resultado.

Responder1

Analisando o rastreamentoem WPA.exe mostra que o FMicuso do pool vem de RazerCortex.exeonde ocorre durante a criação de arquivos ( KernelBase.dll!CreateFileW).

insira a descrição da imagem aqui

Isso também faz com que o IRP (que significaPacote de solicitação de E/S) uso:

insira a descrição da imagem aqui

O driver rzudd.sys também causa uso de IRP:

insira a descrição da imagem aqui

Então atualize oFerramenta navalhaou melhor, remova-o (e todos os outros softwares/drivers relacionados ao Razor).

Responder2

Eu tive exatamente o mesmo problema. As tags FMic e IRP estavam consistentemente no topo, ocupando gigas de pool não paginado se meu computador ficasse ligado por longos períodos sem uma reinicialização adequada. Identifiquei-o no Razer Cortex, meu único software Razer na época, e no segundo em que o desinstalei, meu pool não paginável encolheu para 1,2 GB em vez de 3-4 GB, depois de deixar meu computador ligado por alguns dias. Anteriormente, tentei reinstalar os drivers da Killer Network e removi um driver Razer para um dispositivo que não estava mais usando, mas nenhum dos dois ajudou tanto quanto remover o Cortex.

informação relacionada