Övervakare för total DPC-tid i procent för operativsystemet SUSE Linux Enterprise Server 12
Procentsatsen för DPC-tid (för alla processorer) är hög. Systemprestanda kan påverkas negativt.
Total DPC-tid är den tid som alla processorer använt till att ta emot och betjäna uppskjutna proceduranrop (DPC, Deferred Procedure Call). DPC:er är avbrott som körs med lägre prioritet än standardavbrotten. DPC-tid i procent är en komponent som ingår i Privilegierad tid i procent, eftersom DPC-anrop utförs i privilegierat läge. Vid en varaktigt hög DPC-tid i procent kan det finnas en flaskhals i processorn eller ett program- eller maskinvarurelaterat problem som avsevärt försämrar hela systemets prestanda.
Tröskelvärdet för övervakaren analyseras mot ett medeltal av de värden som returneras vid avsökningar till agenten, där parametern Antal prover styr antalet prov som tas med vid beräkning av medelvärdet. Värdet som returneras av agenten är det rullande medelvärdet för de 5 senaste värdena frågat med 1 minuts intervall.
Standardkonfiguration
Parameter | Standardvärde |
Tröskelvärde | 15 |
Intervall (sekunder) | 300 |
Antal insamlingar | 3 |
Åsidosättningar kan användas för att ändra parametervärden som har definierats ovan för alla instanser eller för specifika instanser eller grupper.
Ett högt DPC-tidsvillkor kan ha en eller flera av följande orsaker:
Processorbegränsning
Programvarurelaterat problem
Maskinvaru- eller drivrutinsrelaterat problem
Följ anvisningen nedan för att bestämma grundorsaken till ett högt DPC-tidsvillkor. Observera andelen av processortiden som används för betjäning av avbrott och DPC:er (uppskjutna proceduranrop). För detta, övervaka följande väden:
Processor\% processortid (_Total)
Processor\% avbrottstid (_Total)
Processor\% DPC-tid (_Total)
Jämför värdena för % avbrottstid (_Total) och % DPC-tid (_Total) med % processortid (_Total).
Om värdet för % processortid (_Total) ständigt är > 85 % och % avbrottstid (_Total) eller % DPC-tid (_Total) är > 15 % är processorerna förmodligen källan till en prestandabegränsning. Den här begränsningen kan åtgärdas genom att uppgradera eller lägga till processorer till datorn.
Om värdet för % processortid (_Total) ständigt är < 85 % och % avbrottstid (_Total) eller Total % DPC-tid (_Total) är > 15 %, är prestandaproblemet antagligen program- eller maskinvarurelaterat.
Target | Microsoft.Linux.SLES.12.OperatingSystem | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.Unix.WSMan.Performance.Filtered.Average.Threshold.MonitorType | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.Linux.SLES.12.OperatingSystem.TotalPercentDPCTime.Monitor" Accessibility="Public" Target="Microsoft.Linux.SLES.12.OperatingSystem" TypeID="Unix!Microsoft.Unix.WSMan.Performance.Filtered.Average.Threshold.MonitorType" Enabled="true" ParentMonitorID="SystemHealth!System.Health.PerformanceState">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.Linux.SLES.12.OperatingSystem.TotalPercentDPCTime.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Value$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState HealthState="Success" MonitorTypeStateID="UnderThreshold" ID="UnderThreshold"/>
<OperationalState HealthState="Error" MonitorTypeStateID="OverThreshold" ID="OverThreshold"/>
</OperationalStates>
<Configuration>
<TargetSystem>$Target/Host/Property[Type="Unix!Microsoft.Unix.Computer"]/NetworkName$</TargetSystem>
<Uri>http://schemas.microsoft.com/wbem/wscim/1/cim-schema/2/SCX_ProcessorStatisticalInformation?__cimnamespace=root/scx</Uri>
<Filter/>
<SplitItems>true</SplitItems>
<Interval>300</Interval>
<ObjectName>Processor</ObjectName>
<CounterName>% Interrupt Time</CounterName>
<InstanceName>_Total</InstanceName>
<InstanceProperty>/DataItem/WsManData/*[local-name(.)='SCX_ProcessorStatisticalInformation']/*[local-name(.)='Name']</InstanceProperty>
<Value>$Data/WsManData/*[local-name(.)='SCX_ProcessorStatisticalInformation']/*[local-name(.)='PercentDPCTime']$</Value>
<Threshold>15</Threshold>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>