Monitorování procenta celkového času DPC v operačním systému SUSE Linux Enterprise Server 12
Celkové procento času DPC (pro všechny procesory) je vysoké. Výkon systému může být negativně ovlivněn.
Celková doba DPC představuje čas, který procesory strávily příjmem a řešením volání odložených postupů (DPC). DPC jsou přerušení, která se spouští s nižší prioritou než standardní přerušení. % času DPC je součástí % privilegovaného času, protože DPC jsou spouštěna v privilegovaném režimu. Pokud je % času DPC trvalejší, může jít o snížení výkonu procesoru nebo o problém týkající se určité aplikace či hardwaru, který může výrazně snížit celkový výkon systému.
Monitorovaná prahová hodnota je analyzována z hlediska průměru hodnot vrácených agentovi v dotazování, kde parametr počet vzorků řídí počet vzorků zahrnutých do výpočtu průměru. Hodnota vrácená agentem je souhrnný průměr 5 posledních hodnot dotazovaných v 1minutových intervalech.
Výchozí konfigurace
Parametr | Výchozí hodnota |
Prahová hodnota | 15 |
Interval (sekundy) | 300 |
Počet vzorků | 3 |
Přepsání je možné použít ke změně hodnot parametrů definovaných nahoře pro všechny instance nebo pro určité instance nebo skupiny.
Dlouhá doba stavu DPC může být způsobena jednou nebo více z následujících možností:
Omezení výkonu procesoru
Problém související se softwarem
Problém související s hardwarem nebo ovladačem zařízení
K určení kořenové příčiny stavu dlouhé doby DPC postupujte následovně. Sledujte velikost procesorového času stráveného obsluhou přerušení a DPC. To lze provést pomocí následující metriky:
Procesor\% procesorový čas (_Celkem)
Procesor\% doba přerušení (_Celkem)
Procesor\% doba DPC (_Celkem)
Porovnejte hodnoty metrik doby přerušení v % (_Celkem) a doby DPC v % (_Celkem) s procesorovým časem v % (_Celkem).
Pokud je % zachovaného procesorového času (_Celkem) > 85 % a % doby přerušení (_Celkem) nebo % doby DPC (_Celkem) > 15 %, budou procesory pravděpodobným zdrojem nízkého výkonu. Tyto potíže lze řešit upgradem nebo přidáním dalších procesorů do počítače.
Pokud je % zachovaného procesorového času (_Celkem) < 85 % a % doby přerušení (_Celkem) nebo % doby DPC (_Celkem) > 15 %, mohou problémy s výkonem vznikat vlivem aplikace nebo souviset s hardwarem.
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>