TdrDelay unter Windows konfigurieren: Unterschied zwischen den Versionen
Asphyx (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
Asphyx (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
||
| (2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
'''TdrDelay''' bestimmt, wie lange Windows auf | '''TdrDelay''' bestimmt, wie lange Windows auf die Grafikkarte wartet, bevor die Funktion '''Timeout Detection and Recovery''' den Grafiktreiber als blockiert betrachtet und eine Wiederherstellung einleitet. | ||
Eine Erhöhung beschleunigt die Grafikkarte | Eine Erhöhung beschleunigt weder die Grafikkarte noch Berechnungen oder Spiele. Sie verlängert ausschließlich das Zeitfenster, in dem die GPU einen laufenden Auftrag beenden oder unterbrechen kann. | ||
== Funktionsweise von TDR == | |||
Windows überwacht über das '''Windows Display Driver Model''' die Reaktionsfähigkeit der Grafikkarte. | |||
Kann die GPU einen Auftrag innerhalb des festgelegten Zeitlimits weder abschließen noch unterbrechen, behandelt Windows sie als blockiert. Anschließend versucht das System, den Grafiktreiber und die GPU zurückzusetzen, ohne den gesamten Computer neu zu starten. | |||
Der interne Standardwert für dieses Zeitlimit beträgt zwei Sekunden. | |||
== Registrierungspfad == | == Registrierungspfad == | ||
| Zeile 11: | Zeile 19: | ||
== Registrierungswert == | == Registrierungswert == | ||
'''Name:''' | |||
Ist der Wert nicht vorhanden, verwendet Windows | <pre> | ||
TdrDelay | |||
</pre> | |||
'''Typ:''' | |||
<pre> | |||
DWORD-Wert (32-Bit) | |||
</pre> | |||
'''Windows-Standard:''' | |||
<pre> | |||
2 Sekunden | |||
</pre> | |||
Ist der Wert nicht vorhanden, verwendet Windows automatisch den internen Standardwert von zwei Sekunden. | |||
== TdrDelay auf zehn Sekunden erhöhen == | == TdrDelay auf zehn Sekunden erhöhen == | ||
Unterhalb des Registrierungsschlüssels wird ein neuer '''DWORD-Wert (32-Bit)''' mit dem Namen '''TdrDelay''' angelegt. | |||
Bei | Bei der Eingabebasis '''Dezimal''' wird eingetragen: | ||
<pre> | <pre> | ||
| Zeile 36: | Zeile 49: | ||
</pre> | </pre> | ||
Bei | Bei der Eingabebasis '''Hexadezimal''' entspricht dies: | ||
<pre> | <pre> | ||
| Zeile 42: | Zeile 55: | ||
</pre> | </pre> | ||
'''10 | '''Achtung:''' Der Eintrag '''10''' bei gewählter Basis '''Hexadezimal''' entspricht 16 Sekunden. | ||
== Registrierungsdatei == | == Registrierungsdatei == | ||
Die folgende Registrierungsdatei setzt | Die folgende Registrierungsdatei setzt TdrDelay auf zehn Sekunden: | ||
<pre> | <pre> | ||
| Zeile 57: | Zeile 70: | ||
Der Inhalt kann als Datei mit der Endung <code>.reg</code> gespeichert und anschließend mit Administratorrechten ausgeführt werden. | Der Inhalt kann als Datei mit der Endung <code>.reg</code> gespeichert und anschließend mit Administratorrechten ausgeführt werden. | ||
== Einstellung über | == Einstellung über das Windows-Terminal == | ||
Das Windows-Terminal oder die Eingabeaufforderung muss als Administrator geöffnet werden: | |||
<pre> | <pre> | ||
| Zeile 66: | Zeile 79: | ||
Anschließend muss Windows neu gestartet werden. | Anschließend muss Windows neu gestartet werden. | ||
== Wann kann eine Erhöhung sinnvoll sein? == | |||
Eine moderate Erhöhung kann bei einzelnen Anwendungen sinnvoll sein, deren GPU-Aufträge absichtlich länger als zwei Sekunden dauern. | |||
Mögliche Anwendungsbereiche sind: | |||
* GPU-Rendering | |||
* wissenschaftliche GPU-Berechnungen | |||
* bestimmte Video- und 3D-Anwendungen | |||
* Entwicklung und Prüfung von Grafiktreibern | |||
* reproduzierbare Timeouts bei ansonsten stabiler Hardware und Software | |||
Die Änderung sollte nur vorgenommen werden, wenn ein konkreter Zusammenhang zwischen der Anwendung und dem TDR-Zeitlimit besteht. | |||
== Wann ist eine Erhöhung nicht sinnvoll? == | |||
TdrDelay behebt keine grundlegenden Stabilitätsprobleme. | |||
Eine Erhöhung ist keine geeignete Lösung bei: | |||
* fehlerhaften oder beschädigten Grafiktreibern | |||
* instabiler GPU- oder Speicherübertaktung | |||
* Überhitzung | |||
* fehlerhafter Spannungsversorgung | |||
* defekter Grafikkarte | |||
* beschädigten Systemdateien | |||
* wiederholten Abstürzen ohne klaren Zusammenhang mit langen GPU-Berechnungen | |||
Bei einem tatsächlichen Stillstand der GPU wartet Windows nach einer Erhöhung entsprechend länger, bevor es den Grafiktreiber zurücksetzt. Der schwarze oder eingefrorene Bildschirm bleibt dadurch länger bestehen. | |||
== Bewertung möglicher Werte == | |||
=== Zwei Sekunden === | |||
<pre> | |||
TdrDelay = 2 | |||
</pre> | |||
Dies entspricht dem internen Windows-Standard und ist für normale Arbeitsplatz-, Spiele- und Multimediasysteme die grundsätzlich sinnvolle Einstellung. | |||
=== Zehn Sekunden === | |||
<pre> | |||
TdrDelay = 10 | |||
</pre> | |||
Ein moderater Testwert für Anwendungen mit nachweislich langen GPU-Aufträgen. Der Wert kann unnötige Treiberzurücksetzungen verhindern, verzögert bei einem echten GPU-Stillstand jedoch auch die Wiederherstellung. | |||
=== Sehr hohe Werte === | |||
Werte von 30, 60 Sekunden oder mehr sollten nicht als allgemeine Lösung verwendet werden. Sie können einen tatsächlichen Grafikfehler lediglich länger verbergen und das System entsprechend lange unbedienbar lassen. | |||
=== TDR vollständig deaktivieren === | |||
Die TDR-Erkennung sollte nicht deaktiviert werden. Ohne automatische Erkennung und Wiederherstellung kann ein blockierter Grafiktreiber zu einem dauerhaft eingefrorenen System führen. | |||
== Weitere TDR-Einstellungen == | |||
Im selben Registrierungsschlüssel existieren weitere TDR-bezogene Werte. Diese sind keine allgemeinen Leistungsoptimierungen und sollten normalerweise unverändert bleiben. | |||
=== TdrDdiDelay === | |||
'''Standardwert:''' 5 Sekunden | |||
Dieser Wert bestimmt, wie lange Windows darauf wartet, dass betroffene Threads den Grafiktreiber verlassen. Wird die Frist überschritten, kann Windows den Computer mit dem Fehler '''VIDEO_TDR_FAILURE''' anhalten. | |||
Eine Änderung ist für normale Anwender nicht sinnvoll. | |||
=== TdrLevel === | |||
Dieser Wert bestimmt das grundlegende Verhalten der TDR-Wiederherstellung. | |||
<pre> | |||
0 = TDR-Erkennung deaktiviert | |||
1 = sofortiger Systemabsturz bei erkanntem Timeout | |||
2 = Wiederherstellung im VGA-Modus, nicht implementiert | |||
3 = Wiederherstellung des Grafiktreibers, Windows-Standard | |||
</pre> | |||
Der Standardwert '''3''' sollte beibehalten werden. | |||
Insbesondere der Wert '''0''' ist keine Optimierung. Er deaktiviert eine wichtige Schutz- und Wiederherstellungsfunktion von Windows. | |||
=== TdrDebugMode === | |||
Dieser Wert steuert das Verhalten in Verbindung mit einem Kernel-Debugger. | |||
Der Standardwert ermöglicht die Wiederherstellung ohne Unterbrechung durch einen Debugger. Änderungen sind ausschließlich für gezielte Treiberentwicklung und Fehlerdiagnose relevant. | |||
=== TdrLimitTime === | |||
'''Standardwert:''' 60 Sekunden | |||
Dieser Wert legt den Zeitraum fest, innerhalb dessen mehrere TDR-Ereignisse gezählt werden. | |||
Eine Änderung behebt keine Ursache für wiederholte Grafiktreiberfehler. | |||
=== TdrLimitCount === | |||
'''Standardwert:''' 5 TDR-Ereignisse | |||
Dieser Wert legt fest, wie viele GPU-Timeouts innerhalb des durch '''TdrLimitTime''' bestimmten Zeitraums zulässig sind, bevor Windows den Computer kontrolliert anhält. | |||
Eine Erhöhung kann wiederholte Fehler lediglich länger tolerieren und ist keine Stabilitätsoptimierung. | |||
=== TdrTestMode === | |||
Dieser Wert ist reserviert und darf nicht verwendet werden. | |||
=== TdrDodPresentDelay und TdrDodVSyncDelay === | |||
Diese Werte betreffen spezielle Kernel-Mode-Display-Only-Treiber und sind ausschließlich für Entwicklung und Debugging vorgesehen. | |||
Für normale Grafikkarten-, Spiele-, Video- oder Rendering-Systeme sind sie nicht relevant. | |||
== Empfohlene Vorgehensweise bei TDR-Fehlern == | |||
Vor einer Änderung von TdrDelay sollten zunächst folgende Ursachen geprüft werden: | |||
# Grafiktreiber aktualisieren oder auf eine zuvor stabile Version zurücksetzen. | |||
# GPU-, Videospeicher- und Arbeitsspeicher-Übertaktung deaktivieren. | |||
# Temperaturen und Spannungsversorgung prüfen. | |||
# Fehler nur mit der betroffenen Anwendung reproduzieren. | |||
# Windows-Ereignisanzeige und Anwendungsprotokolle auswerten. | |||
# Erst danach TdrDelay testweise moderat erhöhen. | |||
Eine Verbesserung durch TdrDelay deutet nicht automatisch auf eine optimale Lösung hin. Sie kann auch bedeuten, dass eine Anwendung oder ein Treiber ungewöhnlich lange, nicht unterbrechbare GPU-Aufträge erzeugt. | |||
== Rückgängig machen == | == Rückgängig machen == | ||
| Zeile 77: | Zeile 223: | ||
Anschließend muss Windows neu gestartet werden. | Anschließend muss Windows neu gestartet werden. | ||
== | == Fazit == | ||
'''TdrDelay''' ist eine Zeitlimit- und Diagnoseeinstellung, keine Grafikoptimierung. | |||
Ein Wert von zehn Sekunden kann bei nachweislich langen GPU-Berechnungen als gezielter Test sinnvoll sein. Für normale Systeme sollte der Windows-Standard beibehalten werden. | |||
Die weiteren TDR-Werte sollten ausschließlich zur Treiberentwicklung oder qualifizierten Fehlerdiagnose verändert werden. | |||
[[Kategorie:Registry – Grafik]] | [[Kategorie:Registry – Grafik]] | ||
Aktuelle Version vom 12. Juli 2026, 11:43 Uhr
TdrDelay bestimmt, wie lange Windows auf die Grafikkarte wartet, bevor die Funktion Timeout Detection and Recovery den Grafiktreiber als blockiert betrachtet und eine Wiederherstellung einleitet.
Eine Erhöhung beschleunigt weder die Grafikkarte noch Berechnungen oder Spiele. Sie verlängert ausschließlich das Zeitfenster, in dem die GPU einen laufenden Auftrag beenden oder unterbrechen kann.
Funktionsweise von TDR
Windows überwacht über das Windows Display Driver Model die Reaktionsfähigkeit der Grafikkarte.
Kann die GPU einen Auftrag innerhalb des festgelegten Zeitlimits weder abschließen noch unterbrechen, behandelt Windows sie als blockiert. Anschließend versucht das System, den Grafiktreiber und die GPU zurückzusetzen, ohne den gesamten Computer neu zu starten.
Der interne Standardwert für dieses Zeitlimit beträgt zwei Sekunden.
Registrierungspfad
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers
Registrierungswert
Name:
TdrDelay
Typ:
DWORD-Wert (32-Bit)
Windows-Standard:
2 Sekunden
Ist der Wert nicht vorhanden, verwendet Windows automatisch den internen Standardwert von zwei Sekunden.
TdrDelay auf zehn Sekunden erhöhen
Unterhalb des Registrierungsschlüssels wird ein neuer DWORD-Wert (32-Bit) mit dem Namen TdrDelay angelegt.
Bei der Eingabebasis Dezimal wird eingetragen:
10
Bei der Eingabebasis Hexadezimal entspricht dies:
A
Achtung: Der Eintrag 10 bei gewählter Basis Hexadezimal entspricht 16 Sekunden.
Registrierungsdatei
Die folgende Registrierungsdatei setzt TdrDelay auf zehn Sekunden:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers] "TdrDelay"=dword:0000000a
Der Inhalt kann als Datei mit der Endung .reg gespeichert und anschließend mit Administratorrechten ausgeführt werden.
Einstellung über das Windows-Terminal
Das Windows-Terminal oder die Eingabeaufforderung muss als Administrator geöffnet werden:
reg add "HKLM\SYSTEM\CurrentControlSet\Control\GraphicsDrivers" /v TdrDelay /t REG_DWORD /d 10 /f
Anschließend muss Windows neu gestartet werden.
Wann kann eine Erhöhung sinnvoll sein?
Eine moderate Erhöhung kann bei einzelnen Anwendungen sinnvoll sein, deren GPU-Aufträge absichtlich länger als zwei Sekunden dauern.
Mögliche Anwendungsbereiche sind:
- GPU-Rendering
- wissenschaftliche GPU-Berechnungen
- bestimmte Video- und 3D-Anwendungen
- Entwicklung und Prüfung von Grafiktreibern
- reproduzierbare Timeouts bei ansonsten stabiler Hardware und Software
Die Änderung sollte nur vorgenommen werden, wenn ein konkreter Zusammenhang zwischen der Anwendung und dem TDR-Zeitlimit besteht.
Wann ist eine Erhöhung nicht sinnvoll?
TdrDelay behebt keine grundlegenden Stabilitätsprobleme.
Eine Erhöhung ist keine geeignete Lösung bei:
- fehlerhaften oder beschädigten Grafiktreibern
- instabiler GPU- oder Speicherübertaktung
- Überhitzung
- fehlerhafter Spannungsversorgung
- defekter Grafikkarte
- beschädigten Systemdateien
- wiederholten Abstürzen ohne klaren Zusammenhang mit langen GPU-Berechnungen
Bei einem tatsächlichen Stillstand der GPU wartet Windows nach einer Erhöhung entsprechend länger, bevor es den Grafiktreiber zurücksetzt. Der schwarze oder eingefrorene Bildschirm bleibt dadurch länger bestehen.
Bewertung möglicher Werte
Zwei Sekunden
TdrDelay = 2
Dies entspricht dem internen Windows-Standard und ist für normale Arbeitsplatz-, Spiele- und Multimediasysteme die grundsätzlich sinnvolle Einstellung.
Zehn Sekunden
TdrDelay = 10
Ein moderater Testwert für Anwendungen mit nachweislich langen GPU-Aufträgen. Der Wert kann unnötige Treiberzurücksetzungen verhindern, verzögert bei einem echten GPU-Stillstand jedoch auch die Wiederherstellung.
Sehr hohe Werte
Werte von 30, 60 Sekunden oder mehr sollten nicht als allgemeine Lösung verwendet werden. Sie können einen tatsächlichen Grafikfehler lediglich länger verbergen und das System entsprechend lange unbedienbar lassen.
TDR vollständig deaktivieren
Die TDR-Erkennung sollte nicht deaktiviert werden. Ohne automatische Erkennung und Wiederherstellung kann ein blockierter Grafiktreiber zu einem dauerhaft eingefrorenen System führen.
Weitere TDR-Einstellungen
Im selben Registrierungsschlüssel existieren weitere TDR-bezogene Werte. Diese sind keine allgemeinen Leistungsoptimierungen und sollten normalerweise unverändert bleiben.
TdrDdiDelay
Standardwert: 5 Sekunden
Dieser Wert bestimmt, wie lange Windows darauf wartet, dass betroffene Threads den Grafiktreiber verlassen. Wird die Frist überschritten, kann Windows den Computer mit dem Fehler VIDEO_TDR_FAILURE anhalten.
Eine Änderung ist für normale Anwender nicht sinnvoll.
TdrLevel
Dieser Wert bestimmt das grundlegende Verhalten der TDR-Wiederherstellung.
0 = TDR-Erkennung deaktiviert 1 = sofortiger Systemabsturz bei erkanntem Timeout 2 = Wiederherstellung im VGA-Modus, nicht implementiert 3 = Wiederherstellung des Grafiktreibers, Windows-Standard
Der Standardwert 3 sollte beibehalten werden.
Insbesondere der Wert 0 ist keine Optimierung. Er deaktiviert eine wichtige Schutz- und Wiederherstellungsfunktion von Windows.
TdrDebugMode
Dieser Wert steuert das Verhalten in Verbindung mit einem Kernel-Debugger.
Der Standardwert ermöglicht die Wiederherstellung ohne Unterbrechung durch einen Debugger. Änderungen sind ausschließlich für gezielte Treiberentwicklung und Fehlerdiagnose relevant.
TdrLimitTime
Standardwert: 60 Sekunden
Dieser Wert legt den Zeitraum fest, innerhalb dessen mehrere TDR-Ereignisse gezählt werden.
Eine Änderung behebt keine Ursache für wiederholte Grafiktreiberfehler.
TdrLimitCount
Standardwert: 5 TDR-Ereignisse
Dieser Wert legt fest, wie viele GPU-Timeouts innerhalb des durch TdrLimitTime bestimmten Zeitraums zulässig sind, bevor Windows den Computer kontrolliert anhält.
Eine Erhöhung kann wiederholte Fehler lediglich länger tolerieren und ist keine Stabilitätsoptimierung.
TdrTestMode
Dieser Wert ist reserviert und darf nicht verwendet werden.
TdrDodPresentDelay und TdrDodVSyncDelay
Diese Werte betreffen spezielle Kernel-Mode-Display-Only-Treiber und sind ausschließlich für Entwicklung und Debugging vorgesehen.
Für normale Grafikkarten-, Spiele-, Video- oder Rendering-Systeme sind sie nicht relevant.
Empfohlene Vorgehensweise bei TDR-Fehlern
Vor einer Änderung von TdrDelay sollten zunächst folgende Ursachen geprüft werden:
- Grafiktreiber aktualisieren oder auf eine zuvor stabile Version zurücksetzen.
- GPU-, Videospeicher- und Arbeitsspeicher-Übertaktung deaktivieren.
- Temperaturen und Spannungsversorgung prüfen.
- Fehler nur mit der betroffenen Anwendung reproduzieren.
- Windows-Ereignisanzeige und Anwendungsprotokolle auswerten.
- Erst danach TdrDelay testweise moderat erhöhen.
Eine Verbesserung durch TdrDelay deutet nicht automatisch auf eine optimale Lösung hin. Sie kann auch bedeuten, dass eine Anwendung oder ein Treiber ungewöhnlich lange, nicht unterbrechbare GPU-Aufträge erzeugt.
Rückgängig machen
Um wieder den internen Windows-Standard zu verwenden, wird der manuell angelegte Wert gelöscht:
reg delete "HKLM\SYSTEM\CurrentControlSet\Control\GraphicsDrivers" /v TdrDelay /f
Anschließend muss Windows neu gestartet werden.
Fazit
TdrDelay ist eine Zeitlimit- und Diagnoseeinstellung, keine Grafikoptimierung.
Ein Wert von zehn Sekunden kann bei nachweislich langen GPU-Berechnungen als gezielter Test sinnvoll sein. Für normale Systeme sollte der Windows-Standard beibehalten werden.
Die weiteren TDR-Werte sollten ausschließlich zur Treiberentwicklung oder qualifizierten Fehlerdiagnose verändert werden.