LabVIEWForum.de
CPU Auslastung einzelner Prozesse - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: ActiveX & .Net (/Forum-ActiveX-Net)
+---- Thema: CPU Auslastung einzelner Prozesse (/Thread-CPU-Auslastung-einzelner-Prozesse)



CPU Auslastung einzelner Prozesse - taktbar - 01.02.2012 20:41

Hallo!

Ich möchte einen kleinen Task - Monitor realisieren, welcher mir die CPU Auslastung auf die einzelnen Prozesse verteilt anzeigt bzw. ausgibt.

Hintergrund ist folgender:
Ein bestehendes VI wird ab und an nicht schnell genug ausgeführt und ich möchte dazu wissen, ob in diesem Moment ein anderer Prozess eine hohe Prozessorlast verursacht.

Dazu stelle ich mir vor, dass ein SubVI den Prozess mit der zu diesem Zeitpunkt höchsten CPU Last identifiziert und an das aufrufende VI zurückliefert. Anregungen habe ich mir bereits in dem LV Beispiel "SimpleTaskMonitor" geholt. Was jedoch nicht funktioniert ist die CPU Last der einzelnen Prozesse herauszubekommen. Diese wird mir lediglich im gesamten angezeigt...

Hat jemand mit einer solchen Problemstellung bereits Erfahrungen gemacht?
Oder hat jemand eine gute Idee / Tipp oder sogar einen Lösungsansatz?


RE: CPU Auslastung einzelner Prozesse - Y-P - 05.02.2012 16:09

Interessant wäre noch zu wissen, für welches Betriebssystem Du das möchtest.
Ich habe für .NET auch nur ein Bsp. für die gesamte CPU-Auslastung, aber leider nicht für den einzelnen Prozess.

Gruß Markus


RE: CPU Auslastung einzelner Prozesse - taktbar - 05.02.2012 18:12

Das System ist WinXP. Ich glaube 32bit, das kann ich aber erst morgen nachschauen.

Für die gesamte CPU Last habe ich bereits etliche Beispiele gefunden und auch schon einige implementiert.
Mich würde jedoch interessieren, welcher Prozess die höchste Last im Moment des Fehlers hat.
Leider kann ich - da die Maschine oft unbeaufsichtigt läuft - im Nachhinein aus der Gesamtlast nicht mehr darauf schließen.


RE: CPU Auslastung einzelner Prozesse - jg - 05.02.2012 19:56

Mal zur Klarstellung:
Meinst du mit Prozess wirklich eine Exe oder ein VI?

Gruß, Jens


RE: CPU Auslastung einzelner Prozesse - taktbar - 05.02.2012 20:15

Ich meine mit "Prozess" einen Prozess, wie man ihn im Taskmanager ansehen kann.
Dort wird ja auch die Prozessorlast auf die einzelnen Prozesse verteilt angezeigt.
Genau das brauche ich auch.


RE: CPU Auslastung einzelner Prozesse - dereinzug - 24.02.2015 15:05

Hallo,

hat jemand der Interessenten hier das Problem zwischenzeitlich lösen können?

Ich hätte aktuell gerne dieselbe Information (CPU-Auslastung bezogen auf den Prozess) ausgelesen.

Ich habe dann auch erstmal das Beispiel von LabVIEW: SimpleTaskMonitor.vi unter LV2010 32 Bit und LV 2011 64 Bit ausprobiert.

Es funktioniert soweit unter Win7 x64.

Allerdings wird in dem Beispiel pro Prozess nur die Speicherauslastung ermittelt und die CPU-Aulastung nur insgesamt.

Was ich im Beispiel gesehen habe, deckt sich soweit mit diesen Informationen:
http://stackoverflow.com/questions/4679962/what-is-the-correct-performance-counter-to-get-cpu-and-memory-usage-of-a-process?lq=1

Ich habe daher versucht, den Teil, der die RAM-Belegung ausliest, entsprechend für die CPU-Auslastung umzubauen:
[attachment=52213]

Es gibt keine Fehlermeldung. Es werden aber nur Nullen ausgegeben.

Ohne Modifikation schaut das Blockdiagramm von SimpleTaskMonitor.vi so aus:
[attachment=52214]

ciao Tom


RE: CPU Auslastung einzelner Prozesse - jg - 24.02.2015 15:16

Offtopic2
Bitte das nächste Mal Anhänge hier im Forum hochladen. Gerade so breite Screenshots wie du gerade eben verlinkt hast zerhauen die Forendarstellung im Browser. Wink

Danke, Jens