Sledování času DPC procesoru systému Red Hat Enterprise Linux Server 7
Procento času DPC (na jeden procesor) je vysoké. Výkon systému může být negativně ovlivněn.
Procesorový čas DPC představuje dobu, kterou jeden procesor strávil 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.
Monitorování jednotlivých procesorů je ve výchozím nastavení zakázáno. Sledování povolte spuštěním zjišťování objektu s názvem Discover Red Hat Enterprise Linux Server 7 Processor.
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
Procesor\% doba přerušení
Procesor\% doba DPC
Porovnejte hodnoty metrik doby přerušení v % a doby DPC v % s procesorovým časem v % pro každou instanci procesoru.
Pokud je % zachovaného procesorového času > 85 % a % doby přerušení nebo % doby DPC > 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 < 85 % a % doby přerušení nebo % doby DPC > 15 %, mohou problémy s výkonem vznikat vlivem aplikace nebo souviset s hardwarem.
Target | Microsoft.Linux.RHEL.7.Processor | ||
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.RHEL.7.Processor.PercentDPCTime.Monitor" Accessibility="Public" Target="Microsoft.Linux.RHEL.7.Processor" TypeID="Unix!Microsoft.Unix.WSMan.Performance.Filtered.Average.Threshold.MonitorType" Enabled="true" ParentMonitorID="SystemHealth!System.Health.PerformanceState">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.Linux.RHEL.7.Processor.PercentDPCTime.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>$Target/Property[Type="Unix!Microsoft.Unix.Processor"]/PerfmonInstance$</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>