Percentuale tempo DPC totale sistema operativo

Microsoft.Linux.SLES.11.OperatingSystem.TotalPercentDPCTime.Monitor (UnitMonitor)

Monitoraggio Percentuale tempo DPC totale sistema operativo SUSE Linux Enterprise Server 11

Knowledge Base article:

Riepilogo

La percentuale totale del tempo di DPC (per tutti i processori) è elevata. Le prestazioni del sistema potrebbero essere compromesse.

Tempo totale DPC è il tempo utilizzato da tutti i processori per ricevere ed elaborare chiamate di procedura differite (DPC). Le DPC rappresentano interrupt che vengono eseguiti a priorità più bassa rispetto agli interrupt standard. % tempo DPC è un componente di % tempo privilegiato, poiché le DPC vengono eseguite in modalità privilegiata. % tempo DPC alta indica un collo di bottiglia nel processore o un problema relativo a un'applicazione o all'hardware, in grado di ridurre in modo significativo le prestazioni globali del sistema.

La soglia di monitoraggio viene analizzata confrontandola con una media dei valori restituiti all'agente in forma di sondaggi, dove il parametro Numero di campioni si riferisce al numero di campioni inclusi nel calcolo della media. Il valore restituito dall'agente è la media in sequenza dei 5 valori più recenti con esecuzione di query a intervalli di 1 minuto.

Configurazione

Configurazione predefinita

Parametro

Valore predefinito

Soglia

15

Intervallo (secondi)

300

Numero di campioni

3

Override può essere utilizzato per modificare i valori di parametro definiti in precedenza per tutte le istanze o per istanze specifiche o gruppi.

Cause

Una condizione di tempo DPC alto può essere causato da una o più delle seguenti situazioni:

Risoluzioni

per stabilire la causa principale di una condizione di tempo DPC elevata, attenersi alle procedure elencate di seguito. Osservare la proporzione tra il tempo del processore impiegato a gestire gli interrupt e quello impiegato per le DPC. A tale scopo, monitorare le seguenti metriche:

Confrontare i valori di % tempo di Interrupt (_Totale) e % metriche tempo DPC (_Totale) con % tempo processore (_Totale).

Se % tempo processore continuo (_Totale) è > 85% e % tempo di Interrupt (_Totale) o % tempo DPC (_Totale) è > 15%, i processori, probabilmente, sono la fonte del collo di bottiglia delle prestazioni. È possibile risolvere il collo di bottiglia aggiornando o installando processori sul computer.

Se % tempo processore continuo (_Totale) è < 85% e % tempo di Interrupt (_Totale) o % tempo DPC totale (_Totale) è > 15%, è possibile che la riduzione delle prestazioni sia dovuta a un problema relativo a un'applicazione o all'hardware.

Element properties:

TargetMicrosoft.Linux.SLES.11.OperatingSystem
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Unix.WSMan.Performance.Filtered.Average.Threshold.MonitorType
RemotableTrue
AccessibilityPublic
Alert Message
\% tempo DPC totale troppo elevata
La soglia per il contatore delle prestazioni Processore\\% tempo DPC\_Totale è stata superata. Il valore che ha superato la soglia è: {0}.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Linux.SLES.11.OperatingSystem.TotalPercentDPCTime.Monitor" Accessibility="Public" Target="Microsoft.Linux.SLES.11.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.11.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>