Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Mehrkern CPU Auslastung erkennen und verarbeiten

Mitglied: Alucard7

Alucard7 (Level 1) - Jetzt verbinden

28.02.2011, aktualisiert 01.03.2011, 4966 Aufrufe, 4 Kommentare

Hallo an alle Mitglieder,

ich habe ein kleines Problem und zwar soll ich eine kleine Batch-Datei schreiben, die bestimmtes Servermonitoring betreibt.
Das klappt soweit ganz gut, nur habe ich jetzt noch Probleme bei der Erkennung der CPU Auslastung bei Mehrkern CPUs.

Gibt es irgendwelche Möglichkeiten die Auslastung der einzelnen Kerne auszulesen, sodass man diese am Ende in einer bat verarbeiten kann?

mfg Alucard7
Mitglied: AndreasHoster
28.02.2011 um 12:10 Uhr
Möglichkeiten gibts fast immer, Frage ist nur der Aufwand es zu realisieren
Das Zauberwort hier heißt WMI (=Windows Management Instrumentation).
Die WMI Klasse für den Prozessor: Win32_PerfFormattedData_PerfOS_Processor
Doku bei MS: http://msdn.microsoft.com/en-us/library/aa394271(v=vs.85).aspx

Integration in Batch dürfte über WMIC.exe gehen, ich benutze für sowas immer den Windows Scrpting Host.
Wie es im WSH aussieht, sieht man am einfachsten, indem man die Scriptomatic von MS benutzt: http://www.microsoft.com/germany/technet/datenbank/articles/600322.mspx
Download der Scriptomatic: http://www.microsoft.com/downloads/en/details.aspx?FamilyID=09dfc342-64 ...
Bitte warten ..
Mitglied: Alucard7
28.02.2011 um 17:59 Uhr
Hi,
danke für die schnelle Antwort.
War aber mein Fehler zu erwähnen, dass das Skript auf win 2000 server laufen muss und deshalb wohl wmi ausscheidet, da ich da eine Fehlermeldung bekam beim ausführen, dass iwelche dlls fehlen. Hab allerdings auch mit einer Version von win xp getestet, da ich keine für früher im inet finden konnte.
Diese Klasse hab ich schon ausprobiert über vbs, jedoch erhielt ich für mich nicht nachvollziehbare Ergebnisse, bzw. keine eindeutige Auslastung für verschiedene Kerne.
Falls ich iwo nicht richtig getestet habe, bitte berichtie mich ;)

Habe imo keine Zeit für deinen 2. Absatz zu testen, melde mcih später ncohmal.

mfg Alucard7
Bitte warten ..
Mitglied: AndreasHoster
01.03.2011 um 08:42 Uhr
Beispiel aus der Scriptomatic (leicht abgewandelt):
01.
On Error Resume Next 
02.
 
03.
Const wbemFlagReturnImmediately = &h10 
04.
Const wbemFlagForwardOnly = &h20 
05.
' Hier die abzufragenden Computer eintragen . ist der lokale 
06.
arrComputers = Array(".") 
07.
For Each strComputer In arrComputers 
08.
   WScript.Echo 
09.
   WScript.Echo "==========================================" 
10.
   WScript.Echo "Computer: " & strComputer 
11.
   WScript.Echo "==========================================" 
12.
 
13.
   Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") 
14.
   Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_PerfFormattedData_PerfOS_Processor", "WQL", _ 
15.
                                          wbemFlagReturnImmediately + wbemFlagForwardOnly) 
16.
 
17.
   For Each objItem In colItems 
18.
      WScript.Echo "Name: " & objItem.Name 
19.
      WScript.Echo "PercentIdleTime: " & objItem.PercentIdleTime 
20.
      WScript.Echo "PercentInterruptTime: " & objItem.PercentInterruptTime 
21.
      WScript.Echo "PercentPrivilegedTime: " & objItem.PercentPrivilegedTime 
22.
      WScript.Echo "PercentProcessorTime: " & objItem.PercentProcessorTime 
23.
      WScript.Echo "PercentUserTime: " & objItem.PercentUserTime 
24.
      WScript.Echo "*****************************************************" 
25.
   Next 
26.
Next 
27.
 
Das ergibt bei mir als Ausgabe:
Computer: .
Name: 0
PercentIdleTime: 33
PercentInterruptTime: 0
PercentPrivilegedTime: 0
PercentProcessorTime: 66
PercentUserTime: 63
*
Name: 1
PercentIdleTime: 63
PercentInterruptTime: 0
PercentPrivilegedTime: 0
PercentProcessorTime: 36
PercentUserTime: 33
*
Name: _Total
PercentIdleTime: 0
PercentInterruptTime: 0
PercentPrivilegedTime: 0
PercentProcessorTime: 51
PercentUserTime: 48
*

Name ist die Instanz wie im PerfMon ausgewählt (0,1 und _Total)
Wie man bei PercentProcessorTime sieht, ist der Eine zu 36, der Andere zu 66 Prozent ausgelastet, in der Summe das System zu 51 Prozent.
Ist doch das, was Du haben willst, oder nicht?
Und laut http://www.microsoft.com/germany/technet/datenbank/articles/600682.mspx ist WMI auch bei Win2000 dabei.
Bitte warten ..
Mitglied: Alucard7
01.03.2011 um 09:06 Uhr
Hi,
Ja das ist genau das was ich brauche, Vielen Dank!

Das mit wmi war auf die wmic.exe bezogen und mal wieder unklar ausgedrückt von mir xD. Über diese wollte ich mit "WMIC CPU GET LoadPercentage" auf die CPU zugreifen, jedoch war diese .exe nicht auf dem System vorhanden und jene von win xp wollte win 2000 nicht nehmen.

Wie gesagt, dass mit der Win32_PerfFormattedData... hatte ich ausprobiert, nur konnte ich die mehrfachen Ausgaben nicht als verwertbare Ergebnisse erkennen, ala den Wald vor lauter Bäumen nicht xD.

Nochmals vielen Dank!

mfg alucard7

Edit: Problem besteht weiterhin, da die Klasse Win32_PerfFormattedData_PerfOS_Processor nicht von win 2000 unterstützt wird. Als Ersatz soll die Klasse Win32_PerfRawData_PerfProc_Process verwendet werden, jedoch spuckt diese lange Reihen von:

Name: 1 PercentProcessorTime: 435685000000
Name: 2 PercentProcessorTime: 665937500
Name: 3 PercentProcessorTime: 312500
...

aus. Damit weiß ich gar ncihts anzufangen.

mfg alucard7
Bitte warten ..
Ähnliche Inhalte
Hyper-V
Verständnisfrage zu CPU Auslastung
Frage von AndreasOCHyper-V5 Kommentare

Hallo zusammen, ich bei uns einen Server mit mehreren VMs. Nun beschwerten sich ein paar Leute das eine VM ...

Switche und Hubs
SG300 Routing und CPU Auslastung
Frage von mario89Switche und Hubs5 Kommentare

Hallo Leute, nachdem ich von eurer Seite das letzte mal schon sehr gute Hilfestellungen bekommen habe, muss ich mich ...

CPU, RAM, Mainboards
Prozessnamen und CPU Auslastung loggen
gelöst Frage von DoktorApfelCPU, RAM, Mainboards2 Kommentare

Hallo zusammen, ich habe ein Problem mit einem Laptop, bei diesem ist sporadisch die CPU 100% ausgelastet. Ich konnte ...

Hardware

Mindestens einmal am Tag hohe cpu Auslastung

Frage von Saba91Hardware6 Kommentare

Hallo Leute , Also ich hab einmal am Tag eine cpu Auslastung von 100% diese hält sich dann einige ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 11 StundenWindows 103 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 14 StundenAdministrator.de Feedback10 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 1 TagHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 1 TagGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Server-Hardware
Welche Rolle spielt Design bei Enterprise IT Hardware?
Frage von ApolloXServer-Hardware17 Kommentare

Ich arbeite für einen internationalen Elektronikhersteller in der Forschung und meine Aufgabe ist es, Feedback von Nutzern in Hinsicht ...

Windows Netzwerk
WSUS4 und Windows 10 Updates automatisch installieren
Frage von sammy65Windows Netzwerk15 Kommentare

Hallo miteinander, ich habe mit einen neuen WSUS Server aufgesetzt Server 2016 darauf einen aktuellen WSUS. Grund, wir stellen ...

Speicherkarten
Vergessliche USB-Sticks?
Frage von hanheikSpeicherkarten14 Kommentare

Ich habe in den letzten Tagen 500 USB-Sticks mit Bilddateien bespielt. Obwohl ich die Dateien mit größter Sorgfalt kopiert ...

Switche und Hubs
Cisco SG350X-48 AdminIP in anderes VLAN
Frage von lcer00Switche und Hubs14 Kommentare

Hallo zusammen, ich habe ein Problem mir einem Cisco SG350X-48 bei der Erstinstallation wurde eine IP 192.168.0.254 (Default VLAN ...