Gebruik Windows Performance Recorder om knelpunten op te sporen.

  • Met Windows Performance Recorder en Windows Performance Analyzer kunt u ETW-traceringen vastleggen en analyseren om de werkelijke knelpunten in Windows te lokaliseren.
  • In .NET- en ASP.NET Core-applicaties worden ze gecombineerd met Visual Studio, Application Insights, PerfView en PerfCollect voor diepgaande diagnostiek op Windows en Linux.
  • Netwerktools, bottleneckcalculators en Taakbeheer zelf helpen bij het identificeren van hardware-onevenwichtigheden en resourceverzadiging.
  • Door systeemgegevens, applicatiestatistieken en hardwaretests te integreren, kunt u de juiste prioriteiten stellen voor wat geoptimaliseerd of geüpgraded moet worden om de prestaties te verbeteren.

Knelpuntenanalyse met Windows Performance Recorder

Als een computer of applicatie begint te haperen, wordt de processor meestal als boosdoener aangewezen. RAM of zelfs naar het netwerk, maar zonder betrouwbare gegevens is het heel gemakkelijk om een ​​fout te maken in de diagnose. Met Windows Performance Recorder (WPR) en Windows Performance Analyzer (WPA) kunt u vastleggen en in detail visualiseren wat er gebeurt. in het systeem, juist tijdens die piekbelastingen of prestatiedalingen.

WPR en WPA zijn absoluut geen tools die alleen voor experts zijn weggelegd; ze passen perfect in het dagelijks leven van ontwikkelaars, beheerders en gevorderde gebruikers. In combinatie met andere hulpprogramma's zoals Visual Studio, Application Insights, PerfViewscripts zoals PerfCollect of zelfs Taakbeheer zelfDit biedt een zeer krachtig arsenaal aan hulpmiddelen voor het opsporen van knelpunten in de CPU, het geheugen, de schijf, de GPU, het netwerk of externe afhankelijkheden.

Wat is Windows Performance Recorder en hoe past het in het diagnostische ecosysteem?

Windows Performance Recorder maakt deel uit van de Windows Performance Toolkit (WPT).WPT is een set Microsoft-tools die zijn ontworpen voor het vastleggen en analyseren van prestaties op besturingssysteemniveau. WPT bestaat uit twee hoofdcomponenten:

  • WPR is verantwoordelijk voor het vastleggen van het evenementenverloop.
  • WPA. De grafische interface waar die trace vervolgens wordt geopend en bestudeerd.

WPR is gebaseerd op de infrastructuur van Event Tracing voor Windows (ETW), het logboekregistratiesysteem op kernelniveau dat in Windows is geĆÆntegreerd. Elke opnamesessie wordt opgeslagen in een bestand met de extensie . .etl (Gebeurtenistraceringslogboek), en dat is de verbinding die we later met WPA zullen openen om het gedrag van het systeem en de applicaties met een enorme granulariteit te bestuderen.

Om te bepalen wat er wordt vastgelegd, gebruikt WPR profielbestanden met de extensie . .wprp. Deze profielen definiƫren de set van aanbieders en gebeurtenissen, de bemonsteringsfrequentie, het detailniveau, enzovoort. Dankzij deze profielen kan de vastlegging worden aangepast aan specifieke scenario's.

Van haar kant, Windows Prestatieanalyse Het is de grafische tool waarmee je .etl-bestanden kunt openen. En je kunt informatie verkennen zoals tijdgrafieken, hiƫrarchische tabellen, gecorreleerde tijdlijnen en specifieke weergaven voor CPU, geheugen, I/O, netwerk en vele andere subsystemen. WPA is zeer flexibel. Je kunt gegevens sorteren op verschillende velden, in- en uitzoomen in de tijd en groeperen op threads, processen, modules, aanroepstacks en meer.

Windows Prestatieanalyse voor het opsporen van knelpunten

Belangrijke concepten en terminologie vóór het opnemen van tracks

Voordat je begint met het opnemen van tracks, is het verstandig om een ​​aantal basistermen onder de knie te krijgen die je constant tegenkomt in de documentatie en in de tools zelf. Als je deze vaktermen kent, kun je de resultaten beter interpreteren en raak je niet verdwaald in de afkortingen..

De eerste sleutelterm is ETW (Event Tracing for Windows). Dit is het mechanisme voor het bijhouden van gebeurtenissen op kernelniveau dat in Windows is ingebouwd. Dankzij ETW kunnen zowel de systeemkernel als veel applicaties en componenten efficiƫnt en met minimale impact gebeurtenissen genereren.

Wanneer deze gebeurtenissen naar de schijf worden geschreven, worden ze opgeslagen in een bestand. Logboek voor gebeurtenisregistratie met de extensie .etlTelkens wanneer je een trace uitvoert met WPR, is het typische resultaat een bestand van dit type, dat we vervolgens kunnen analyseren met WPA of andere compatibele tools, zoals PerfView.

De applicatie waarmee de opname start en stopt, heet... WPR (Windows Prestatie Recorder)Deze recorder accepteert een of meer .wprp-profielen als invoer, die specificeren welke gebeurtenissen worden opgenomen en met welke configuratie. Het is gebruikelijk om vooraf gedefinieerde profielen te selecteren voor CPU, I/O, grafische kaart of algemeen systeemgebruik.

Tenslotte WPA (Windows Prestatie Analyzer) Het is de grafische interface waarmee je .etl-bestanden kunt openen en de gegevens kunt navigeren, sorteren, filteren en correleren. Vanuit WPA kun je dieper ingaan op welke threads de CPU overbelasten, welke processen de meeste schijf-I/O genereren, welke externe afhankelijkheden latentie veroorzaken of hoe de tijd verdeeld is over verschillende bewerkingen in een applicatie.

WPR en WPA gebruiken om CPU- en systeemknelpunten op te sporen.

In industriƫle omgevingen, back-endomgevingen of gewoon op veeleisende werkstations, CPU-pieken (Pieken) zijn een van de meest voorkomende symptomen van prestatieproblemen.WPR en WPA zijn met name nuttig om vast te leggen wat er tijdens die pieken gebeurt en om te begrijpen wat de oorzaak ervan is.

De gebruikelijke workflow omvat het gebruik van WPR start de opname net voordat het probleem zich voordoet.Dit proces moet worden gestart via de grafische interface of de commandoregel en gestopt zodra de piek of prestatieafwijking optreedt. Op deze manier geeft het resulterende .etl-bestand een nauwkeurig beeld van het systeemgedrag tijdens het kritieke venster.

Vervolgens wordt dat bestand geopend met WPA biedt een zeer intuĆÆtieve visuele interface voor het inspecteren van gegevens.Je kunt tijdgrafieken bekijken van CPU-gebruik, geheugenverbruik, I/O en andere tellers, en vervolgens vanuit het algemene systeemoverzicht inzoomen op specifieke processen, specifieke threads en zelfs aanroepstacks die uitleggen welke code op een bepaald moment werd uitgevoerd.

Door die patronen rustig te analyseren, is het mogelijk Identificeer de werkelijke knelpunten. Denk bijvoorbeeld aan een thread die de CPU monopoliseert, een specifieke routine die te vaak wordt uitgevoerd, of een slecht ontworpen kritieke sectie. In sectoren zoals industriƫle motorondersteuning of besturingssoftware is dit soort gedetailleerde analyses essentieel om concurrerend te blijven en productiestilstand te voorkomen.

WPR

Diagnostiek voor .NET- en ASP.NET Core-applicaties: Visual Studio, Application Insights en PerfView.

Binnen het .NET-ecosysteem zijn er, naast WPR en WPA, specifieke tools die zeer geschikt zijn wanneer het doel is om Diagnoseer prestatieproblemen in ASP.NET Core-applicaties of .NET-backendservices.Veel daarvan worden aangevuld met monitoring op systeemniveau.

De profileringstools geĆÆntegreerd in Visual Studio Ze vormen een zeer handige eerste stap. Vanuit de ontwikkelomgeving zelf kun je het CPU-gebruik, de geheugenallocatie, het gedrag van de garbage collector en bepaalde prestatiegebeurtenissen binnen de applicatie analyseren. Doordat ze geĆÆntegreerd zijn, vergemakkelijken ze het werk tijdens de ontwikkelings- en testfasen aanzienlijk.

Wanneer het scenario verschuift naar productie- of gedistribueerde omgevingen, treedt het volgende in werking. Azure-toepassingsinzichtenDeze telemetrieservice verzamelt automatisch diverse gegevens, zowel in ASP.NET Core als in andere technologieƫn.

Een van de meest interessante elementen is de applicatiekaartDit is een weergave die alle componenten van een gedistribueerde architectuur toont en waarmee u snel probleemgebieden of prestatieknelpunten tussen services kunt identificeren. Daarnaast... Azure Metrics Explorerwaardoor het gemakkelijker wordt om statistieken in grafieken weer te geven, trends te correleren en pieken of dalingen in waarden nader te onderzoeken.

Het prestatieoverzicht van Application Insights biedt een overzicht per bewerking: Het toont de tijdsduur van elke actie in de applicatie, waardoor je een specifieke bewerking nader kunt bekijken. en alle afhankelijkheden zien die ertoe bijdragen dat het te lang duurt, en zelfs vanuit datzelfde overzicht kun je de functie aanroepen Applicatie-inzichtenprofieler om gedetailleerde prestatiegegevens op aanvraag vast te leggen.

PerfView en PerfCollect: Diepgaande analyse in .NET- en Linux-scenario's

Om het maximale uit de diagnostische functies in .NET-applicaties te halen, is het raadzaam om gebruik te maken van... PerfViewPerfView, een tool ontwikkeld door het .NET-team specifiek voor prestatieanalyse, is in staat om CPU-gebruik, geheugen, gedrag van de garbage collector (GC), ETW-gebeurtenissen en kloktiming zeer gedetailleerd te bestuderen.

Een bijzonder krachtig aspect van PerfView is de Mogelijkheid om .etl-bestanden te openen en te analyseren die met WPR zijn gegenereerd.Hiermee kunt u aanroepstacks en de kosten van elke functie bestuderen. Microsoft biedt een zeer uitgebreide gebruikershandleiding aan, die zowel in de tool zelf als op GitHub beschikbaar is en gebruiksscenario's, commando's en aanbevolen workflows uitlegt.

Het grootste nadeel is dat PerfView alleen op Windows draait en dus niet rechtstreeks op Linux-servers met ASP.NET Core-applicaties kan worden gestart. Om deze beperking te verhelpen, biedt de .NET-community en het team een ​​oplossing. PerfCollect, een Bash-script dat gebruikmaakt van native Linux-tools zoals perf en LTTng om compatibele tracking vast te leggen.

In dit geval houdt de workflow in dat PerfCollect wordt uitgevoerd in de Linux-omgeving waar het prestatieprobleem zich voordoet. Verzamel de trace en breng het resulterende bestand over naar een Windows-computer.Vervolgens wordt het geopend met PerfView om een ​​diepgaande analyse uit te voeren van de aanroepstacks, het CPU-gebruik en het gedrag van de garbage collector.

Gedetailleerde informatie over het installeren van PerfCollect, het starten en stoppen van traceersessies en het interpreteren van de resultaten in combinatie met PerfView en andere diagnostische tools is te vinden op GitHub.

Analyse van knelpunten in HoloLens en apparaten via WPA

Prestatiebewaking is niet beperkt tot servers en desktop-pc's; het is ook bijzonder nuttig in apparaten zoals HoloLenswaar de thermische en resourcebeperkingen kleiner zijn. Het identificeren van processen die de temperatuur laten stijgen of threads die de CPU overbelasten, is cruciaal voor het behoud van een soepele mixed reality-ervaring.

In deze scenario's wordt ook de ETW-infrastructuur gebruikt. HoloLens kan traceringen genereren met behulp van de Windows Performance Recorder.Deze gegevens worden opgeslagen als .etl-bestanden, die vervolgens met WPA vanaf een test-pc worden geopend. Dit maakt het mogelijk om knelpunten in de hardware of software te visualiseren, zoals oververhitting of bijzonder veeleisende processen.

Om WPA te gebruiken, download je eenvoudig de applicatie van Microsoft Store of installeer de Windows Performance Toolkit. via de Windows Assessment and Deployment Kit (ADK). De kit bevat ook andere algemene tools voor het debuggen en diagnosticeren van het platform.

De HoloLens-opname wordt gemaakt via de ApparaatportaalGa via het zijmenu naar de sectie 'Prestatiebewaking', kies een vooraf gedefinieerd profiel of laad een aangepast profiel, klik op 'Bewaking starten' en het probleemscenario wordt gereproduceerd. Zodra de benodigde gegevens zijn verzameld, stopt u de bewaking. Het portaal toont vervolgens de trace onderaan de pagina.

Dit ETL-bestand kan direct worden gedownload, geopend in WPA op de analysemachine of gedeeld met iemand anders om de analyse in hun omgeving uit te voeren. Eenmaal in WPA is het mogelijk om specifieke analyseprofielen toe te passen en te focussen op de CPU, het geheugen, de GPU of elk ander subsysteem dat relevant is voor de mixed reality-ervaring.

WPA

Bestanden en profielen voorbereiden voor analyse met Windows Performance Analyzer.

Om een ​​WPA-analyse echt effectief te laten zijn, is het raadzaam de benodigde resources rondom het .etl-bestand te organiseren. Het is aan te raden een map aan te maken met daarin de trackinggegevens, symbolen en WPA-profielen. die gebruikt zal worden, zodat de tool gemakkelijk toegang heeft tot alles.

Een typisch voorbeeld van een werkstructuur is dat het bestand zich in dezelfde map bevindt. Het trackingbestand HoloLens_trace_file.etl, een WPA-profiel zoals CPU_analysis.wpaProfile en een submap met de naam "Symbols". met alle benodigde .pdb-bestanden al uitgepakt. WPA kan vervolgens de aanroepstacks met leesbare functienamen ontleden, wat essentieel is om te bepalen welk deel van de code de belasting veroorzaakt.

De standaardwerkwijze voor analyse in WPA is doorgaans als volgt: Start het programma en open het .etl-bestand via het menu "Bestand > Openen". Laat het de begingegevens laden. Laad vervolgens de symbolen vanuit het trackingmenu ("Track > Load Symbols" of iets dergelijks, afhankelijk van de versie), waarbij u de map selecteert waar de .pdb-bestanden zich bevinden.

Zodra WPA symbolen heeft, kan het Selecteer een specifiek analyseprofiel uit het profielenmenu.door het bijbehorende .wpaProfile-bestand te selecteren. Deze stap genereert automatisch een reeks grafieken en tabellen die worden weergegeven in het tabblad Analyse, met de focus op de meest relevante aspecten voor dat type monitoring (bijv. CPU, scheduler, schijf-I/O, enz.).

Van daaruit omvat het werk het verkennen van deze weergaven, het uitbreiden van knooppunten, het filteren op processen of threads en het correleren van wat er in de grafieken te zien is met het waargenomen gedrag op het apparaat. De tool zelf bevat een zeer nuttig introductietabblad en er is uitgebreide documentatie en trainingsmateriaal beschikbaar voor verdere verkenning, waaronder introductievideo's en stapsgewijze handleidingen.

Belangrijkste bottleneckcalculators voor Windows

Tot de meest populaire opties behoren enkele tools die, met verschillende benaderingen, Ze proberen de discrepantie tussen de belangrijkste componenten van het systeem te kwantificeren.Ze zijn niet perfect, maar ze geven wel een indicatie als je weet hoe je de resultaten moet interpreteren.

Een van de bekendste is de PC-builds bottleneckcalculatorDe interface is eenvoudig: je kiest een processor, een grafische kaart, de gewenste resolutie en het type gebruik (bijvoorbeeld gamen), en de tool berekent of de combinatie een significant knelpunt zal vormen of niet.

Het sterke punt van deze rekenmachine is dat Het maakt het heel eenvoudig om hardware van verschillende fabrikanten te combineren. Het geeft een snel en duidelijk antwoord op de vraag of de CPU de GPU zal beperken of andersom. Het grootste nadeel is dat het geen rekening houdt met de grootte en snelheid van het RAM-geheugen, factoren die de daadwerkelijke prestaties van het systeem aanzienlijk beĆÆnvloeden.

Voor een iets gedetailleerdere analyse kunt u de volgende bron raadplegen: knelpuntcalculator CPU-agentIn tegenstelling tot de vorige tool houdt deze wel rekening met de hoeveelheid geheugen, de snelheid ervan, evenals de CPU, GPU, resolutie en grafische kwaliteit die u van plan bent te gebruiken.

Een ander voordeel van dit hulpmiddel is dat Het biedt uitgebreide informatie over elk onderdeel. Bijvoorbeeld: of de processor over ingebouwde koeling beschikt, hoe goed hij presteert bij verschillende resoluties, wat het verwachte gebruikspercentage is, enzovoort. Dit alles helpt om een ​​beter beeld te krijgen en een weloverwogen beslissing te nemen.

In beide gevallen gaat het om gratis diensten die zeer gebruiksvriendelijk zijn: u selecteert de gewenste componenten, voert de berekening uit en krijgt binnen enkele seconden de resultaten. Het is echter raadzaam om de resultaten even rustig te interpreteren en niet alleen af ​​te gaan op een algemeen percentage.

Hoe je rekenmachines en forums kunt gebruiken om de juiste hardware te kiezen

Knelpuntencalculators mogen op zichzelf niet de enige bron van besluitvorming zijn. Ze vormen echter wel een zeer nuttig eerste filter. Idealiter zouden ze gebruikt moeten worden om een ​​aantal redelijke combinaties van CPU, GPU en RAM te selecteren.en van daaruit verder onderzoek doen.

Een goede aanvulling is om naar de te gaan forums van de hardwarefabrikanten zelf of gespecialiseerde gemeenschappen Om andere gebruikers te vinden die dezelfde combinatie van componenten gebruiken als jij overweegt, vind je vaak discussieforums met praktijkervaringen, benchmarks en eventuele problemen die ze zijn tegengekomen.

Het is ook de moeite waard om directe vragen te stellen: Controleer of iemand knelpunten heeft ondervonden met een specifieke processor en grafische kaart bij het uitvoeren van dezelfde software. die je van plan bent te gebruiken. Of vraag om suggesties voor alternatieve combinaties die wellicht beter werken binnen hetzelfde budget.

Daarnaast is het erg handig om te vertrouwen op pagina's voor aangepaste pc-configuratieDeze tools stellen ons in staat om budget, prestaties en energieverbruik in balans te brengen. Door informatie uit calculators, forums en deze configuratoren te combineren, kunnen we tot een weloverwogen aankoop komen die is afgestemd op onze werkelijke behoeften.

Deze aanpak stelt u niet alleen in staat om de juiste componenten te kiezen, maar ook om dit met aanzienlijk meer vertrouwen te doen, wetende dat er gebruikers zijn met positieve ervaringen en dat de kans op ernstige knelpunten veel kleiner is.

Hoe je met Windows-tools knelpunten op een zelfgebouwde pc kunt opsporen.

Als de apparatuur eenmaal is gemonteerd en in gebruik is, is het niet nodig om direct externe hulpmiddelen in te schakelen om onevenwichtigheden op te sporen. Windows bevat Taakbeheer, een zeer waardevol hulpmiddel voor het realtime monitoren van de belasting van de CPU, het RAM-geheugen, de schijf, de GPU en het netwerk..

De basisprocedure bestaat uit:

  1. Taakbeheer openen.
  2. Sluit alle toepassingen behalve de toepassing die u wilt analyseren.
  3. Observeer hoe de verschillende resources zich ontwikkelen tijdens de uitvoering van de typische werkbelasting.

Als u tijdens het gebruik van een specifiek programma merkt dat de CPU, het geheugen, de schijf of het netwerk overbelast raakt, kunt u dit aangeven. Ze worden constant voor 100% benut.Dat onderdeel vormt waarschijnlijk de limiet van het systeem. Het is een vrij duidelijk teken van een knelpunt, wat helpt bepalen welk onderdeel als eerste moet worden geüpgraded.

Een klassiek voorbeeld is een zeer veeleisend spel waarvan de processorvereisten de mogelijkheden van de geĆÆnstalleerde CPU overstijgen. In dergelijke gevallen, De CPU-belasting kan constant op 100% liggen, terwijl het RAM-geheugen nauwelijks wordt gebruikt.

Door deze tests te herhalen met verschillende applicaties en workloads, kunt u geleidelijk een redelijk realistisch beeld vormen van welk onderdeel de algehele prestaties van het systeem het meest belemmert. En dus ook welke upgrade het meest kosteneffectief zou zijn.

Dit complete monitoringsysteem – van WPR en WPA tot PerfView, Application Insights, bottleneckcalculators, netwerkmonitoring of eenvoudige Taakbeheerweergaven – stelt u in staat een redelijk nauwkeurig beeld te krijgen van waar prestatieverlies optreedt. Het doel: knelpunten veel sneller en effectiever opsporen en verhelpen. Vermijd het blindelings inzetten op dure updates die het echte probleem uiteindelijk niet oplossen.

Windows
Gerelateerd artikel:
5 tips om de prestaties van uw Windows-computer te verbeteren