Speicherleck bei Windows 10 – Tags (Poolmon) FMic und Irp – Nicht ausgelagerter Pool bei 5,7 GB

Speicherleck bei Windows 10 – Tags (Poolmon) FMic und Irp – Nicht ausgelagerter Pool bei 5,7 GB

Mir ist in letzter Zeit ein extrem hoher Speicherverbrauch aufgefallen. Allein mit Chrome und 20 geöffneten Tabs werden 13,5 bzw. 16 GB meines Speichers verwendet. Der Task-Manager meldet, dass Chrome nur etwa 3 GB Speicher verwendet. Alle übrigen im Task-Manager gemeldeten Prozesse zusammen ergeben weniger als 1 GB zusätzlichen Speicher, da die meisten von ihnen zwischen 10 MB und 50 MB verwenden.

Ich habe RamMap verwendet, um weitere Details zu erhalten, und festgestellt, dass der Nonpaged Pool mit 5,7 GB extrem hoch ist. Hier ist ein Bild vonRamMap.

Ich habe es verwendet poolmonund festgestellt, dass zwei Dinge einen enormen Teil des nicht ausgelagerten Pools verbrauchen. Hier ist einBild von Poolmon.

Laut einer Google-Tag-Suche unddiese Liste hier, hierfür sind diese beiden Tags da:

  • FMic – fltmgr.sys – IRP_CTRL-Struktur
  • Irp – unbekannt – Io, IRP-Pakete

Aber jetzt bin ich in einer Sackgasse gelandet. Ich habe andere ähnliche Fragen gesehen, aber keine, die sich mit diesen Tags befasst. Das Problem anderer Leute kommt normalerweise von einem Treiber und sie können ihn einfach aktualisieren. Aber in diesem Fall weiß ich nicht, wie ich das beheben soll.

Ich habe die Datei gefundenfltMgr.sysInC:\Windows\System32\Treiber, aber es scheint, dass es eine Microsoft-Sache ist. UnterEigenschaften -> Details, sein Name ist „Microsoft Windows Operating System“ und seine Dateibeschreibung ist „Microsoft Filesystem Filter Manager“. Das heißt, dies ist nicht nur ein Treiber, den ich aktualisieren kann.

Wie für dieIrpEtikett, ich habe keine Ahnung.

Irgendwelche Vorschläge? Wie geht es jetzt weiter und was kann ich tun?

BEARBEITEN 03.03.18: Ich besitze Killer NIC nicht.

Ich habe xperf zum Aufzeichnen verwendet und habeso weit. Ich bin mir nicht sicher, wie ich von hier aus weitermachen soll. Alternativ könnte ich die ETL-Datei hochladen, aber sie ist ziemlich groß, also bin ich mir nicht sicher, wohin. Sagen Sie mir Bescheid, ob das Hochladen hilfreich ist.

Es sind vielleicht 40 Minuten nach dem Neustart und es sind bereits 517 MB nicht ausgelagerter Pool vorhanden.

BEARBEITEN 04/03/18 #1: Der nicht ausgelagerte Pool ist derzeit nach einem Tag bei 1 GB. Es scheint, dass er mit einer Rate von ~1 GB pro Tag zunimmt. Die Ausgabe von fltmcfinden SieHier.

Wie fürIrp- Ich verwende keine Antiviren- oder Backup-Programme, es sei denn, Sie zählen Windows Defender dazu. Ich verwende jedoch einen symbolischen Link von meinem Laufwerk C: (SSD) zu meinem Laufwerk F: (HDD) für die Cache-Ordner von Google Chrome und Skype, da diese Schreibvorgänge von 20 GB pro Tag auf der Festplatte verursachten, was ich auf meiner SSD nicht haben wollte. Dieser Cache funktioniert einwandfrei und wird problemlos auf meine Festplatte geschrieben, ich glaube jedoch nicht, dass er zu fehlgeschlagenen E/A-Vorgängen führen würde.

Ich habe auch ein Raid 0-Array aus 2 Festplatten (je 1 TB), das über die integrierten Speicherplätze von Windows erstellt wurde, nicht über das BIOS oder ähnliches. Ich nehme nicht an, dass dies etwas mit dem zu tun haben könnteIrpSache auch?

Schließlich zeichne ich auch mein Gameplay auf, wenn ich Videospiele spiele. Es läuft automatisch im Hintergrund, sobald ich ein Spiel starte, und verwendet dabei einen Client namens Plays.TV. Aber auch dies funktioniert erfolgreich und ich verstehe nicht, warum die E/A-Anforderung zwar ausgegeben, aber nicht abgeschlossen wird. Die Videoaufzeichnung wird beendet, sobald ich ein Spiel beende.

BEARBEITEN 04/03/18 #2: Ich habe die Ergebnisse wie von @HelpingHand vorgeschlagen verwendet typeperf "Memory\Pool Nonpaged Bytes" -si 20 -o npptracker.csvund grafisch dargestellt. Ich habe das Diagramm auch mit allen Ereignissen kommentiert, sodass Sie sehen können, welche Aktion dem Hoch- oder Herunterspringen der nicht ausgelagerten Bytes entspricht.Hierist die Grafik. Darauf sehen Sie möglicherweise einige Dinge, die Sie nicht erkennen:

  • PUBG- Kurzform für PlayerUnknown's BattleGrounds, ein Videospiel, das ich kürzlich gespielt habe
  • Plays.TV- Videoaufzeichnungsclient, der automatisch mit der Aufzeichnung beginnt, sobald ich ein Spiel betrete, und die Aufzeichnung stoppt, wenn ich es verlasse. Er zeichnet auch Metadaten für einige Spiele auf und platziert sie als Markierung auf der Zeitleiste des Videos, z. B. sehe ich Markierungen in der Zeitleiste, wenn ich jemanden getötet habe. Diese Metadaten werden in einem.FrameletsDatei.
  • Twitch.tv- eine Website zum Streamen
  • Bot für ein Browsergame- nur ein Bot, der HTML-Anfragen beantwortet. Er läuft nur jeweils 30 bis 60 Minuten und ich bin ziemlich sicher, dass er keine Auswirkungen hat.

Wie Sie in der Grafik sehen können, habe ich Xperf mit dem folgenden Befehl etwa 7 Minuten lang verwendet:Xperf -on PROC_THREAD+LOADER+POOL -stackwalk PoolAlloc+PoolFree+PoolAllocSession+PoolFreeSession -BufferSize 1024 -MinBuffers 256 -MaxBuffers 256 -MaxFile 1024 -FileMode Circular

Dies hat eine 1GB.etlDatei, die ich gezippt und hochgeladen habehier (80MB).

Schließlich habe ich es poolmonetwa 2–3 Minuten, nachdem ich aufgehört hatte, wieder verwendet xperf. Ich habe vergessen, es in das Zeitleistendiagramm einzutragen.Hierist ein Bild des Ergebnisses.

Antwort1

Analysieren der AblaufverfolgungIn WPA.exe ist ersichtlich, dass die FMicPoolnutzung RazerCortex.exebeim Erstellen von Dateien ( KernelBase.dll!CreateFileW) auftritt.

Bildbeschreibung hier eingeben

Dies führt auch dazu, dass das IRP (das steht fürE/A-Anforderungspaket) Verwendung:

Bildbeschreibung hier eingeben

Der Treiber rzudd.sys verursacht auch IRP-Nutzung:

Bildbeschreibung hier eingeben

Aktualisieren Sie also dieRasiermesseroder besser noch, entfernen Sie es (und alle anderen Razor-bezogenen Software/Treiber).

Antwort2

Ich hatte genau das gleiche Problem. FMic- und IRP-Tags waren ständig ganz oben und belegten mehrere Gigabyte des nicht ausgelagerten Pools, wenn mein Computer längere Zeit ohne ordnungsgemäßen Neustart eingeschaltet blieb. Ich führte es auf Razer Cortex zurück, meine einzige Razer-Software zu dieser Zeit, und sobald ich sie deinstallierte, schrumpfte mein nicht ausgelagerter Pool auf 1,2 GB statt 3-4 GB, nachdem mein Computer einige Tage lang eingeschaltet war. Zuvor hatte ich versucht, die Killer Network-Treiber neu zu installieren und einen Razer-Treiber für ein Gerät zu entfernen, das ich nicht mehr verwendete, aber nichts davon half so viel wie das Entfernen von Cortex.

verwandte Informationen