Betriebssystem – DPC-Zeit (\%) insgesamt

Microsoft.Linux.RHEL.5.OperatingSystem.TotalPercentDPCTime.Monitor (UnitMonitor)

Red Hat Enterprise Linux Server 5-Monitor "Betriebssystem – DPC-Zeit (\%) insgesamt"

Knowledge Base article:

Zusammenfassung

Dieser Monitor überprüft den Wert für "DPC-Zeit (%) insgesamt" des Systems. Wenn Sie eine Warnung von diesem Monitor erhalten, müssen Sie ggf. eingreifen, um das System wieder in einen Betriebsstatus zu versetzen.

"DPC-Zeit (%)" gibt den prozentualen Anteil der Prozessorzeit an, in der DPCs (Deferred Procedure Call, zurückgestellter Prozeduraufruf) empfangen und verarbeitet wurden. DPCs oder Soft-Interrupts sind Interrupts, die mit niedrigerer Priorität als Standardinterrupts ausgeführt werden. Ist der Wert für "DPC-Zeit (%)" durchgängig hoch, ist dies möglicherweise ein Hinweis auf einen Prozessorengpass oder ein anwendungs- oder hardwarebedingtes Problem, das die Gesamtleistung des Systems merklich verringern kann.

Ursachen

Ein hoher Wert für "DPC-Zeit (%)" kann folgende Ursachen haben:

Lösungen

Gehen Sie zum Ermitteln der Ursache für eine hohe DPC-Rate wie folgt vor: Beobachten Sie den Anteil der Prozessorzeit, der für das Verarbeiten von Interrupts und DPCs benötigt wird. Überwachen Sie dazu die folgenden Leistungsindikatoren im Systemmonitor in Echtzeit:

Vergleichen Sie für jede Prozessorinstanz die Werte der Indikatoren "Interruptzeit (%)" und "DPC-Zeit (%)" mit "Prozessor\Prozessorzeit (%)".

Wenn für einen Prozessor der Wert von Prozessorzeit (%) ständig > 85 % ist und der Prozessor außerdem > 15 % dieser Zeit mit dem Verarbeiten von Interrupts und/oder DPCs verbringt, ist wahrscheinlich der Prozessor die Ursache für den Leistungsengpass. Dieser Engpass kann durch ein Prozessorupgrade oder durch Hinzufügen weiterer Prozessoren zum Computer behoben werden.

Wenn für einen Prozessor der Wert von Prozessorzeit (%) ständig < 85 % ist und der Prozessor > 15 % dieser Zeit mit dem Verarbeiten von Interrupts und/oder DPCs verbringt, wird das Leistungsproblem vermutlich durch ein anwendungs- oder hardwarebedingtes Problem verursacht.

Element properties:

TargetMicrosoft.Linux.RHEL.5.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
Gesamt-DPC-Zeit (\%) zu hoch
Der Schwellenwert für den Leistungsindikator "Prozessor\DPC-Zeit (\%)\_Total" wurde überschritten. Folgender Wert hat den Schwellenwert überschritten: {0}.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Linux.RHEL.5.OperatingSystem.TotalPercentDPCTime.Monitor" Accessibility="Public" Target="Microsoft.Linux.RHEL.5.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.RHEL.5.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>//*[local-name()="Name"]</InstanceProperty>
<Value>$Data///*[local-name()="PercentDPCTime"]$</Value>
<Threshold>95</Threshold>
<NumSamples>5</NumSamples>
</Configuration>
</UnitMonitor>