NEWS
Hoher RAM Verbrauch ioBroker unter Windows
-
@klassisch said in Hoher RAM Verbrauch ioBroker unter Windows:
@lobito sagte in Hoher RAM Verbrauch ioBroker unter Windows:
Natürlich lässt sich aufzeichnen....
Vielen Dank, aber bei mir gibt es dann immer nur eine 14k txt Datei mit einem snapshot. >Ich hätte aber gerne den Verlauf.
Hmm stimmt, dann bleibt nur perfmon... da muss man sehr genau definieren was man will. Ist im Lieferumfang von Win. Um es kurz zu machen, man muss einen neuen Datensammelsatz definieren und kann dann die Berichte abrufen. Mit etwas Hilfe von Google sollte das auch für Laien lösbar sein Hint: https://www.pc-erfahrung.de/windows/anleitungen/performance-monitor-windows-perfmon.html
Gerade nochmal gegrübelt, wenn perfmon zu kompliziert ist. Sysmon könnte auch helfen.. Doku ist da: https://opdhsblobprod03.blob.core.windows.net/contents/6bb3fa9c72bf4849a1db2c526a264f46/63bb4b4d40dfe449aec96040a81c5f31?sv=2015-04-05&sr=b&sig=V7Xu0IBTlE43QYt85RXifPP4704F6c%2B0MG4HFhYPD8c%3D&st=2019-08-15T20%3A46%3A45Z&se=2019-08-16T20%3A56%3A45Z&sp=r -
Ich hab gestern noch einmal mit iobroker mitgeloggt. Hierbei wurde innerhalb von 24h der freie RAM von 12 GB auf 2 GB verringert. Die CPU Auslastung lag nach 24 zwichen 60 und 100%. Das System war hierbei kaum noch benutzbar über den Remotedesktop. Einen Dienst konnte ich bisher noch nicht identifizieren, welcher auf dem Rechner querschlägt.
Am Ende hat der Prozes wmiprvse ca. 30% CPU Leistung in Anspruch genommen. Hierzu habe ich das hier als Hilfe gefunden: https://support.microsoft.com/de-de/help/4483874/high-cpu-usage-by-wmiprvse-exe-process. Der Prozess scheint aber nach meinem Verständnis nicht die Ursache zu sein.
Ich mache gerade nochmal eine Aufzeichnung von CPU und RAM mit dem Tool perfmon. Danke für die Anleitung @lobito
Ebenfalls habe ich gestern abend erstmal alle noch offenen Windows Patches installiert, welche noch offen waren. Ein Upgrade auf Win 10 Version 1903 wird mir noch nicht angeboten. -
Bei mir sieht es aktuelle so aus:
Von Zeit zu Zeit scheint da auf bzw. umgeräumt zu werden.
CPU Last ist "normal" was ich aber indirekt über die Temp mitlogge.
Was Du auch tun kannst:- mit UltraVNC statt mit Remote Desktop auf den Rechner gehen. Wie oben erwähnt macht bei meinem System der Remote Desktop NACH dem Verlassen CPU-Last, was ich an der Temp sehe. Allerdings kam dies bei mir erst ab dem 1903 Update. Aber wer weiß....
- History Dateien mit dem Total Commander o.ä. anschauen, um grob zu sehen, wer wie viele Daten schreibt. Bei mir sind es derzeit 5 bis 8 MByte pro Tag, es waren aber schonmal deutlich mehr durch eine Prozessüberwachung. Ein Datensatz pro Sekunde sind aus meiner Sicht unnötig viel.
- Das Loging des Info-Adapters einschränken. Ich logge nur Speicheränderungen >= 50MByte, was die obigen Kurven ergibt und bei mir mit erträglichen 40kByte pro Kanal zu Buche schlägt. Prozessorlast logge ich gar nicht, da mir 1 Datensatz/s zu viel sind. Logge ich indirekt über die Temperaturen und die Leitung (in W) mit CoreTemp. Dabei lasse ich die Temp alle 5 sek anzeigen und alle 30sec in eine Datei speichern.
- Einzelne ioBroker-Adpter deaktivieren.
-
Das Speicher wieder freigegeben wird konnte ich leider bisher nicht beobachten. Das ist die Grafik von gestern wo über den Info Adapter alle 10s die Daten für RAM und CPU aktualisiert wurden:
Ich hab auch schon eine neue ioBroker Instanz aufgesetzt, welche nur die vorinstallierten Adapter enthielt und dort hatte ich das gleiche Verhalten.
Wenn ich in den nächsten Tagen keine wirkliche Lösung finde werde ich zum großen Hammer greifen und einmal Windows neu installieren. -
@Feuersturm sagte in Hoher RAM Verbrauch ioBroker unter Windows:
wo über den Info Adapter alle 10s die Daten für RAM und CPU aktualisiert wurden
Wo kannst Du die 10 Sekunden einstellen? Das habe ich noch nicht gefunden und meiner aktualisiert jede Sekunde. Meiner Meinung nach würde auch ein Datensatz pro Minute für solche Trenduntersuchungen reichen.
-
Gehe bei den Instanzen auf die Instanz info.0 und klicke dort auf den Werkzeugschlüssel. Dann scrollst du ganz nach unten und dort kannst du über die Schieberegler die Aktualisierungsrate einstellen.
-
Gibts bei mir nicht. Sieht so aus
Version 1.3.7 -
Hmm, ich hab auch die Adapterversion 1.3.7 installiert. Bei mir sieht es so aus:
-
Vielen Dank! Habe jetzt in der Adapteransicht den Upload Button gedrückt und dann siehts bei mir auch so aus. Aber leider ist das max Zeitintervall bei 10 Sekunden.
Temperaturen sehe ich noch immer nicht. -
Habe jetzt mal das Logging der Prozessorlast aktiviert. Für die Gesamtlast speichere ich Änderungen >=3 W auf und für system- und userload jeweils Änderungen >=2W auf. Weiß jemand, ob mit userload die ioBroker generierte Last gemeint ist?
-
Ich habe vor kurzem erst von 8Gbyte RAM auf 16 GByte RAM aufgerüstet. Heute kam mir der Gedanke, ob ggf. der neue RAM Baustein Probleme macht. Ich habe jetzt erstmal den neuen RAM Baustein entfernt und werde mal die nächsten 24h das System beobachten. Vielleicht ist es ja nur ein Hardwaredefekt
-
Da könnte vielleicht ein RAM-Test helfen.
Edit: Vielleicht hilft das: https://tuhlteim.de/ultimate-boot-cd-ubcd-download-usb-stick-cd-laptop-testenIch beobachte derweil weiter:
-
Bitte haltet mich auf Windows bezgl. RAM und CPU-Verbrauch von wmiprvse.exe und vor allem bzgl. der Anzahl von WMIC.EXE-Prozessen auf dem Laufenden.
Testet bitte auch, was mit dem CPU und RAM-Verlauf passiert wenn der Info-Adapter deaktiviert oder die Intervallrate für alle Counter im Info-Adapter auf 0 steht.
Danke.
-
Ich kann die obigen Plots gerne weiterführen und ggf ergänzen.
Nutze dazu den Info-Adapter, der dann aber auch läuft. Habe die Abtastzeiten auf max = 10 Sekunden gestellt und logge nur bei signifikaten Änderungen. So bleibt Prozessorlast und Datenaufkommen angemessen.
Zu WMI* habe ich im Task Manager nur WMI Providerhost (0 bis 3%) und ein ab und an aufblitzendes WMI Befehlszeilendienstprogramm gesehen.
Brauche ich ein anderes Logging-Tool? -
Wenn es sich so verhält, ist alles ok. Dann brauchst Du nicht weiter forschen.
Ich hatte bei mir in der Vergangenheit mehrfach Fälle, wo wmic.exe-Prozesse sich nicht mehr beendet haben und auch entsprechende consolehost.exe-Prozesse stehen geblieben sind. Dann war nach einiger Zeit der Rechner extrem langsam. Aber dafür scheint es Auslöser zu geben. Z.B. defekte Hardware, Treiberprobleme, RAM-Fragmentierung, ...
Ich habe die Vermutung, dass der Infoadapter aufgrund der relativ hohen Frequenz von WMI-Abfragen (ca. knapp 200 Events alle 15s) da selbst auf betroffenen Systemen Auslöser sein kann.
Mal sehen.
-
@Stabilostick Ja, finde die Abfragefrequenz für eine normale Routineüberwachung auch etwas paranoid. Aus meiner Sicht reicht etwas im Minutenbereich für die Routineüberwachung aus. Wenn etwas richtig - also länger andauernd - schief geht, dann merkt man das auch noch bei etwas trägerer Aufzeichnung. Für die Suche von kurzzeitigen Spikes o.ä. mag die schnellere Abfrage und Aufzeichnung ihre Berechtigung haben. Aber das sind Spezialfälle.
Das viele Loggen vom info und vom systeminfo-Adapter waren wohl auch die Ursache für die überlastinduzierten Instabilitäten bei meinem OPi.
Mein i5 wird jetzt wohl nicht so schnell in die Knie gehen. Aber wenn jemand einen NUC mit Atom hat und noch eine ordentliche Grundlast durch andere Win-Anwendungen, dann könnte das auch schon mal zu Problemen kommen. -
@Stabilostick sagte in Hoher RAM Verbrauch ioBroker unter Windows:
Bitte haltet mich auf Windows bezgl. RAM und CPU-Verbrauch von wmiprvse.exe und vor allem bzgl. der Anzahl von WMIC.EXE-Prozessen auf dem Laufenden.
Danke.@Stabilostick Ich hatte seit gestern abend nur noch meinen 8 GByte RAM Riegel im Server, welcher dort schon seit längerer Zeit ohne Probleme werkelt. Innerhalb von etwas mehr als 12 Stunden war der komplette RAM belegt und die CPU wieder im Grenzbereich von 80 bis 100%.
Ich versuche gerade auf den Server zu kommen, es sieht aber nicht gut aus. Bei den ganzen letzten Malen hat wmiprvse.exe ca. 30% an CPU Last verbraucht. Das ganze System reagiert gerade so schwerfällig, dass es schwer ist die genaue Anzahl zu zählen. Bei 50 WMIC.exe hab ich jetzt mal aufgefhört zu zählen.
Ich werde heute abend mal ein paar Tests über meine RAM Bausteine laufen lassen.
Was könnte denn die Ursache dafür sein, dass es so viele WMIC Prozesse sind. Es scheint ja nicht normal zu sein. -
Wenn ich @Stabilostick richtig verstanden habe, wäre es interessant, den Info Adapter zu deaktivieren und dann neu zu starten. Prüfen, ob der Info Adapter immer noch aus ist und von Zeit zu Zeit den Rechner manuell prüfen.
Du kannst die Prozessorlast auch indirekt remote prüfen. CoreTemp prüft die Temp und speichert das in ein Log. Ich lasse alle 5 Sekunden die Temp messen und alle 30 Sekunden in ein csv file schreiben. Diese Datei hole ich mir dann über Dateizugriff und schaue sie mit mit libreoffice auf meinem Office-Rechner an. So muß nicht so oft remote verbinden, was ja extra Last erzeugt und die Messung verfälscht. Und es geht recht stabil und ressourenschonend. -
@klassisch Das werde ich machen, wenn die RAM Tests durch sind.
-
So sieht es mittlerweile bei mir aus:
Die Garbage Collection scheint bei Bedrf stattzufinden. War heute mit UltraVNC drauf, hab etwas nachgeschaut und Defender aktualisiert. Das hat wieder etwas Last erzeugt und er hat dann Speicher freigeräumt.
Alles läuft normal, keine WMI* Auffälligkeiten.
Meine rechenzeitdominante Parallelapplikation braucht am Teg mehr Rechenleistung als nachts, was man bei der Prozessorauslastung auch schön sieht.
Bei meinen Einstellungen bringen die Prozessolastdaten ca. 550kByte/Tag und die Memory-Daten ca. 120kByte / Tag bei.
Werde die Prozessordaten durch Erhöhen der Aufzeichnungsdeltas noch etwas ausdünnen.