CPU Auslastung ermitteln!

18/01/2010 - 09:18 von Marc | Report spam
Hallo,

ich würde gerne die CPU Auslastung des Systems und eines Prozesses
ermitteln.
Leider funktioniert das bei einem Mehrkernsystem nicht wie gewohnt.

Ich habe es über die Performancecounter versucht.

Die System Auslastung funktioniert ganz gut.
counter = new PerformanceCounter("Processor", "% Processor Time",
"_Total");

Die Prozessauslastung bringt völlig falsche Werte (höher als die
Gesamtauslastung!).
counter = new PerformanceCounter("Process", "% Processor Time",
System.Diagnostics.Process.GetCurrentProcess().ProcessName, true);

Welchen Unterschied gibt es zu beachten bei Mehrkernsystemen?

Grüße
Marc
 

Lesen sie die antworten

#1 FrankDzaebel
18/01/2010 - 09:53 | Warnen spam
Hallo Marc,

ich würde gerne die CPU Auslastung des Systems
und eines Prozesses ermitteln.
Leider funktioniert das bei einem Mehrkernsystem
nicht wie gewohnt.
Ich habe es über die Performancecounter versucht.
[...] Die Prozessauslastung bringt völlig falsche Werte
(höher als die Gesamtauslastung!).



by design. Hier die Interpretation für MultiCore:

[All About Interop : System.Diagnostics.PerformanceCounter and %
Processor Time on multi-core or multi-cpu]
http://blogs.msdn.com/dotnetinterop...i-cpu.aspx


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen