Testen und Debuggen von TDR während der Treiberentwicklung
Dieser Artikel enthält TDR-Test- und Debugstrategien (Timeouterkennung und -wiederherstellung) für Entwickler von Anzeigetreibern.
TDR-Tests in WHLK
Das Windows Hardware Lab Kit (WHLK) enthält TDR-spezifische Tests, die Treiberentwickler zu Test- und Debugzwecken verwenden können. Beispielsweise können Entwickler mithilfe der SimulatePreemption TDR manuell einen GPU-TDR auslösen. Weitere Informationen zu den verschiedenen TDR-bezogenen Tests finden Sie unter Device.Graphics .
TDR-Registrierungsschlüssel zum Testen und Debuggen
Entwickler können die folgenden TDR-bezogenen Registrierungsschlüssel nur während des Treiberentwicklungsprozesses zu Test- oder Debugzwecken verwenden.
Wichtig
Diese Registrierungsschlüssel sollten nicht von Endbenutzern oder Anwendungen außerhalb des gezielten Testens oder Debuggens während der Treiberentwicklung bearbeitet werden.
TdrLevel
Gibt die anfängliche Wiederherstellungsebene an.
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrLevel
ValueType : REG_DWORD
ValueData : TdrLevelXxx (see the following table)
Dabei kann TdrLevelXxx einer der folgenden Werte sein:
Wert | Bedeutung |
---|---|
TdrLevelOff (0) | Erkennung deaktiviert |
TdrLevelBugcheck (1) | Fehlerüberprüfung bei erkanntem Timeout; z. B. keine Wiederherstellung. |
TdrLevelRecoverVGA (2) | Wiederherstellen auf VGA (nicht implementiert). |
TdrLevelRecover (3) | Wiederherstellen bei Timeout (Standardwert). |
TdrDelay
Gibt die Anzahl der Sekunden an, für die die GPU die vorzeitige Anforderung vom GPU-Planer verzögern kann. TdrDelay ist im Grunde der Timeoutschwellenwert.
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrDelay
ValueType : REG_DWORD
ValueData : Number of seconds to delay. The default value is 2 seconds.
TdrDdiDelay
Gibt die Anzahl der Sekunden an, für die das Betriebssystem Threads das Verlassen des Treibers zulässt. Nach einer bestimmten Zeit überprüft das Betriebssystem den Computer mit dem Code VIDEO_TDR_FAILURE (0x116).
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrDdiDelay
ValueType : REG_DWORD
ValueData : Number of seconds to leave the driver. The default value is 5 seconds.
TdrDebugMode
Gibt das debugbezogene Verhalten des TDR-Prozesses an. Der Standardwert ist TDR_DEBUG_MODE_RECOVER_NO_PROMPT, was angibt, dass der Debugger nicht unterbrochen werden soll.
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrDebugMode
ValueType : REG_DWORD
ValueData : TDR_DEBUG_MODE_XXX (see the following table)
Wert | Bedeutung |
---|---|
TDR_DEBUG_MODE_OFF (0) | Unterbrechen Sie den Kerneldebugger vor der Wiederherstellung, um die Untersuchung des Timeouts zu ermöglichen. |
TDR_DEBUG_MODE_IGNORE_TIMEOUT (1) | Jedes Timeout ignorieren. |
TDR_DEBUG_MODE_RECOVER_NO_PROMPT (2) | Wiederherstellen ohne Unterbrechung des Debuggers (Standardwert). |
TDR_DEBUG_MODE_RECOVER_UNCONDITIONAL (3) | Stellen Sie die Wiederherstellung selbst dann wieder her, wenn einige Wiederherstellungsbedingungen nicht erfüllt sind (z. B. Wiederherstellung bei aufeinanderfolgenden Timeouts). |
TdrLimitTime
Gibt die Standardzeit an, innerhalb der eine bestimmte Anzahl von TDRs (angegeben durch den TdrLimitCount-Schlüssel ) zulässig ist, ohne dass der Computer abstürzt.
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrLimitTime
ValueType : REG_DWORD
ValueData : Number of seconds before crashing. The default value is 60 seconds.
TdrLimitCount
Gibt die Standardanzahl von TDRs (0x117) an, die während der durch den TdrLimitTime-Schlüssel angegebenen Zeit zulässig sind, ohne dass der Computer abstürzt.
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrLimitCount
ValueType : REG_DWORD
ValueData : Number of TDRs before crashing. The default value is 5.
TdrTestMode
Reserviert. Nicht verwenden.
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrTestMode
ValueType : REG_DWORD
ValueData : Do not use.
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für