blog.atwork.at

news and know-how about microsoft, technology, cloud and more.

High CPU Analyse mit XPerf-oder: wie Sie hohe CPU Auslastung analysieren können

Heute möchte ich Ihnen ein Tool vorstellen, welches nützlich sein kann, wenn man plötzlich bemerkt, dass ein Dienst oder Programm sehr hohe CPU Auslastung hervorruft: XPerf (danke an dieser Stelle an die Kollegen Andreas K., Karl L. und Markus S.). XPerf ist ein Tool, welches in den Windows Performance Analysis Tool enthalten ist. Das ganze Toolset können Sie übrigens hier downloaden.

Nehmen wir einmal an, der Prozess, der eine zu hohe CPU Last hat, ist Outlook. Das ist natürlich etwas ärgerlich, da Outlook im Normalfall jenes Programm ist, welches den ganzen Tag geöffnet ist. Auch wenn man - gemäß der GTD-Theorie (Getting Things Done) - nur 2mal täglich E-Mails liest und beantwortet, so ist Outlook doch auch Terminkalender, hilft Aufgaben zu verwalten, etc.

image

Um den Problem auf die Schliche zu kommen, installieren Sie nun zunächst die Toolkits. Bei mir liegen diese alle im Pfad C:\XPERF. Von hier rufen Sie nun in der Eingabeaufforderung folgendes auf:

xperf -on Latency -stackwalk Profile

image

Nach einiger Zeit können Sie das Trace beenden und die Ergebnisse ausgeben:

xperf -d HighCPU.etl

image

Diese Ergebnisse rufen Sie nun auf:

xperf HighCPU.etl

Daraufhin öffnet sich der Windows Performance Analyzer, der Ihnen die einzelnen CPU's, I/O, ausliest.:

image

Nun mit rechter Maustaste zunächst auf "Load Symbols" gehen:

image

Anschließend im selben Kontextmenü auf Summary Table gehen und schon können Sie die Ergebnisse auslesen. Im Menü View können Sie noch die Spalte Stack einblenden. Die Ergebnisse sind bereits nach CPU Last absteigend sortiert.

image

Dieses englische Video zeigt die Schritte ebenfalls noch einmal auf:

Viel Erfolg bei der Analyse! Hoffentlich können Sie den Verursacher damit schnell identifizieren!



Comments (1) -

  • Thomas Sturzenegger

    10/21/2011 10:12:28 PM |

    Vielen Dank für den interessanten Beitrag!

    Bezüglich Outlook gibts ja eine einfache Lösgung. Wenn Outlook nur wegen dem Terminkalender offen sein soll (ausser die beiden Male am Tag wo Mails beantwortet werden): Office365 in Kombination mit einem Windows Phone ist ein Super Ersatz, sowohl für den Terminkalender als auch... Nein E-Mail nicht... sont klappts mit GTD nicht mehr Wink

Loading