Pourcentage du temps DPC total pour le système d’exploitation

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

Moniteur du pourcentage du temps DPC total du système d’exploitation SUSE Linux Enterprise Server 12

Knowledge Base article:

Récapitulatif

Le pourcentage total de temps DPC (pour tous les processeurs) est élevé. Les performances du système en sont peut-être affectées.

Le temps DPC total est le temps passé par tous les processeurs à recevoir et traiter les appels de procédure différés (DPC). Les appels DPC sont des interruptions qui s’exécutent à un niveau de priorité inférieur par rapport aux interruptions standard. Le Pourcentage de temps DPC est un composant du Pourcentage du temps privilégié car les DPC sont exécutés en mode privilégié. Si un pourcentage de temps DPC élevé est maintenu, cela peut indiquer un goulot d’étranglement au niveau du processeur, ou un problème matériel ou lié à une application, ce qui peut réduire de manière significative les performances générales du système.

Le seuil du moniteur est analysé par rapport à la moyenne des valeurs renvoyées sous forme de sondages à l’agent, où le paramètre Nombre d’échantillons contrôle le nombre d’échantillons inclus dans le calcul de la moyenne. La valeur renvoyée par l’agent est la moyenne cumulée des 5 valeurs les plus récentes interrogées à des intervalles de 1 minute.

Configuration

Configuration par défaut

Paramètre

Valeur par défaut

Seuil

15

Intervalle (secondes)

300

Nombre d’échantillons

3

Les remplacements permettent de modifier les valeurs de paramètre définies ci-dessus pour toutes les instances ou pour des instances ou groupes spécifiques.

Causes

Un temps DPC élevé peut être lié à une ou plusieurs des causes suivantes :

Résolutions

Pour déterminer la cause racine d’un temps DPC élevé, suivez le processus décrit ci-dessous. Observez la proportion de temps processeur passé à traiter les interruptions et les appels DPC. Pour ce faire, supervisez les métriques suivantes :

Comparez les valeurs des mesures Pourcentage du temps d’interruption (_Total) et Pourcentage de temps DPC (_Total) avec Pourcentage de temps processeur (_Total).

Si le Pourcentage de temps processeur (_Total) maintenu est supérieur à 85 % et que le Pourcentage du temps d’interruption (_Total) ou le Pourcentage de temps DPC (_Total) est supérieur à 15 %, les processeurs sont probablement la source du goulot d’étranglement. Ce goulot d'étranglement peut être résolu grâce à la mise à niveau ou à l'ajout de processeurs sur l'ordinateur.

Si le Pourcentage de temps processeur (_Total) maintenu est inférieur à 85 % et que le Pourcentage du temps d’interruption (_Total) ou le Pourcentage de temps DPC (_Total) est supérieur à 15 %, le problème de performances est peut-être lié au matériel ou à l’application.

Element properties:

TargetMicrosoft.Linux.SLES.12.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
Le pourcentage du temps DPC total est trop élevé
Le seuil du compteur de performances Processeur\Pourcentage du temps DPC\_Total a été dépassé. La valeur ayant dépassé le seuil est : {0}.
RunAsDefault

Source Code:

<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>