Percentage totale DPC-tijd

Microsoft.Windows.Server.10.0.OperatingSystem.TotalDPCTime (UnitMonitor)

Hiermee bewaakt u het percentage van de DPC-tijd.

Knowledge Base article:

Samenvatting

Het percentage DPC-tijd (Processorinformatie\Percentage DPC-tijd\_Totaal) voor het systeem heeft de drempelwaarde overschreden. De prestaties van het hele systeem kunnen aanzienlijk afnemen, hetgeen resulteert in slechte prestaties van besturingssysteem en toepassingen.

Percentage DPC-tijd is het percentage tijd dat de processor besteedt aan het ontvangen en verwerken van uitgestelde procedure aanroepen (DPC's). DPC's (deferred procedure calls) zijn interrupts met een lagere prioriteit dan standaardinterrupts. Als er aanhoudend een hoog percentage DPC-tijd is, kan er een knelpunt voor een processor zijn of een toepassings- of hardwaregerelateerd probleem dat de algehele systeemprestaties aanzienlijk kan verminderen.

Oorzaken

Een hoog percentage DPC-tijd kan een of meer van de volgende oorzaken hebben:

Oplossingen

Volg de onderstaande procedure om de grondoorzaak van een hoge DPC-snelheid te bepalen.

Observeer welk deel van de processortijd aan de verwerking van interrupts en DPC's wordt besteed. Om dit te doen, moet u de volgende prestatiemeter-items in real-time in de gaten houden met Systeemmonitor:

Als Percentage processortijd van een processorexemplaar aanhoudend > 85% en Percentage interrupt-tijd of Percentage DPC-tijd > 15% is, is de processor waarschijnlijk de oorzaak van het prestatieknelpunt. Dit knelpunt kan worden verholpen door de processor te upgraden of extra processors toe te voegen aan de computer.

Als Percentage processortijd van een processor aanhoudend < 85% en Percentage interrupt-tijd of Percentage DPC-tijd > 15% is, wordt het prestatieprobleem waarschijnlijk veroorzaakt door een toepassing of een hardwaregerelateerd probleem.

Als een hardwareapparaat de hoofdoorzaak is, zal de beheerder mogelijk constateren dat het Percentage DPC-tijd in korte tijd aanzienlijk is toegenomen. Dit gebeurt vaak wanneer er nieuwe hardware is geïnstalleerd of de stuurprogramma's zijn bijgewerkt. Als de beheerder het probleem kan isoleren tot een hardware/apparaatstuurprogrammaprobleem, kan dit in samenwerking met de leverancier worden opgelost.

In gevallen waarin u een systeem met meerdere processors beheert waarin interrupts niet symmetrisch worden verdeeld, kunt u de verdeling van de processorbelasting vaak verbeteren door netwerkdapters toe te voegen (een adapter voor iedere processor). Over het algemeen voegt u alleen adapters toe wanneer u de doorvoer van uw systeem wilt verbeteren. Netwerkadapters, evenals andere hardware, brengen extra overhead met zich mee. Als een van de processors echter bijna altijd actief is (dat wil zeggen, als processorinformatie: percentage processortijd = 100) en meer dan de helft van deze tijd wordt besteed aan het verwerken van DPC's (als processorinformatie: % DPC-tijd > 50), zal het toevoegen van een adapter waarschijnlijk de systeemprestaties verbeteren, als de beschikbare netwerkbandbreedte nog niet is verzadigd.

Als een toepassing de hoofdoorzaak is, worden DPC's mogelijk geblokkeerd door een toepassing die een aanroep heeft uitgevoerd die veel tijd in beslag neemt. Gedurende deze tijd worden DPC's geblokkeerd en in de wachtrij geplaatst. Om vast te stellen welke toepassing precies de grondoorzaak van de problemen is, moet u geavanceerde opsporingsmethoden gebruiken om de prestaties van de toepassingen te controleren, de toepassingen te traceren en diagnoses voor de toepassingen te stellen.

Element properties:

TargetMicrosoft.Windows.Server.10.0.OperatingSystem
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledFalse
Instance NameProcessor Information
Counter Name\% DPC Time
Frequency120
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeSystem.Performance.ConsecutiveSamplesThreshold
RemotableTrue
AccessibilityPublic
Alert Message
Totale percentage DPC-tijd is te hoog
De drempelwaarde voor het prestatiemeteritem Processorinformatie\Percentage DPC-tijd\_Totaal is overschreden.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.10.0.OperatingSystem.TotalDPCTime" Accessibility="Public" Enabled="false" Target="ServervNext!Microsoft.Windows.Server.10.0.OperatingSystem" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="SystemPerf!System.Performance.ConsecutiveSamplesThreshold" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.10.0.OperatingSystem.TotalDPCTime.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters/>
</AlertSettings>
<OperationalStates>
<OperationalState ID="OverThreshold" MonitorTypeStateID="ConditionTrue" HealthState="Error"/>
<OperationalState ID="UnderThreshold" MonitorTypeStateID="ConditionFalse" HealthState="Success"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>% DPC Time</CounterName>
<ObjectName>Processor Information</ObjectName>
<InstanceName>_Total</InstanceName>
<Frequency>120</Frequency>
<Threshold>95</Threshold>
<Direction>greater</Direction>
<NumSamples>5</NumSamples>
</Configuration>
</UnitMonitor>