GPU TDR in Windows 11: TdrLevel, timeouts and retry limit
On this page
Short answer
Section titled “Short answer”Timeout Detection and Recovery (TDR) detects GPU hangs. If the GPU does not respond within the allotted time, Windows attempts to recover the graphics subsystem. Increasing the timeout or disabling recovery changes the reaction to a hang, but does not make the GPU faster.
What was tested
Section titled “What was tested”We checked whether the graphics subsystem reads the listed TDR parameters, how their values are normalized, and what increasing the timeout or disabling recovery changes.
Scope of research
Section titled “Scope of research”Windows 11 25H2 build 26200.9168, graphics subsystem dxgkrnl.exe with the WDDM driver model. Physical GPUs and specific drivers were not included in the sample.
Methodology
Section titled “Methodology”Static mapping of the parameters to the dxgkrnl.exe code, verification of normalization ranges, and cross-checking against public Microsoft documentation.
Canonical values
Section titled “Canonical values”| Registry path | Value | Type | Default | Role |
|---|---|---|---|---|
HKLM\SYSTEM\CurrentControlSet\Control\GraphicsDrivers |
TdrLevel |
REG_DWORD |
3 |
TDR recovery level |
| same path | TdrDelay |
REG_DWORD |
2 seconds |
main GPU timeout |
| same path | TdrDdiDelay |
REG_DWORD |
5 seconds |
DDI recovery delay |
| same path | TdrDodPresentDelay |
REG_DWORD |
2 seconds |
delay for display-only present |
| same path | TdrDodVSyncDelay |
REG_DWORD |
2 seconds |
delay for display-only VSync |
| same path | TdrLimitCount |
REG_DWORD |
5 |
number of allowed retries |
| same path | TdrLimitTime |
REG_DWORD |
60 seconds |
TDR counting window |
TdrLevel
Section titled “TdrLevel”The allowed values are 0..3: 0 disables hang detection, 1 causes a bug check of Windows when the timeout is exceeded, 2 denotes recovery not implemented in VGA, 3 enables standard recovery. A value outside the range is normalized to 3. The parameter is read by dxgkrnl.exe during graphics subsystem initialization.
Leave the default value: disabling recovery increases the risk of a desktop hang, after which the system will have to be restarted. A temporary change is justified only when diagnosing a specific case where the driver exceeds the timeout.
Timeout and retry limit
Section titled “Timeout and retry limit”TdrDelay is the main GPU timeout parameter: the number of seconds for which the GPU may postpone a preemption request from the GPU scheduler; according to Microsoft documentation, this is the actual timeout threshold. The documented default value is 2 seconds. TdrDebugMode sets the TDR debug behavior: by default, recovery is used without stopping in the debugger; other modes mean stopping in the kernel debugger before recovery, ignoring timeouts, or unconditional recovery. Microsoft documents both keys for driver testing and debugging and explicitly states that end users should not change them.
TdrDdiDelay sets the delay for the DDI. All three DDI/DOD delay parameters are measured in seconds and have an effective range of 1..900: 0 becomes 1, and a value above 900 is clamped to 900.
TdrDodPresentDelay and TdrDodVSyncDelay relate to the kernel-mode display-only driver (KMDOD) and are documented by Microsoft for debugging only. On a regular WDDM driver of a discrete GPU, they are not a universal timeout setting.
TdrLimitCount has an effective range of 1..32 and a default value of 5. It works together with TdrLimitTime, which by default is 60 seconds. Windows counts recoveries over this period; once the limit is exhausted, the reaction to subsequent hangs becomes stricter.
When the timeout is increased, the GPU has more time before recovery, and the application stays unresponsive longer. When it is decreased, the problem is detected faster, but recovery may trigger more often during a long normal operation.
What is confirmed
Section titled “What is confirmed”- The paths, types and default values of the parameters in the build studied.
- The parameters are read during graphics subsystem initialization.
- Values outside the allowed range are normalized.
- The documented purpose of the KMDOD parameters is debugging only.
- In the boot trace of the same build, the graphics subsystem read the entire TDR block at once during initialization —
TdrLevel,TdrDelay,TdrDdiDelay,TdrDodPresentDelay,TdrDodVSyncDelay,TdrLimitCount,TdrLimitTimeandTdrDebugMode; all entries were absent, meaning the default values apply (BoosterX Research observation, the reading ofTdrDelayandTdrDebugModein this trace is recorded, their value normalization was not separately verified).
What is not confirmed
Section titled “What is not confirmed”- The effect of the change on specific GPUs, drivers and games.
- The benefit of increasing the timeout or disabling recovery outside of diagnostics.
- Behavior on other Windows builds.
Practical conclusion
Section titled “Practical conclusion”Leave the default values. A temporary change to the timeout or retry limit is justified only when diagnosing a specific driver hang and with a ready way to restore the configuration.
Restoring the state
Section titled “Restoring the state”Return the default values or delete the optional entries. The change takes effect on the next graphics subsystem initialization.
Limitations
Section titled “Limitations”The reading of the parameters is confirmed on Windows 11 25H2 build 26200.9168. Their effect depends on the WDDM driver, the GPU model, the display-only mode and the cause of the hang.
To return to the default configuration, delete these optional values. When the entries are absent, the graphics subsystem uses the default values. On the build studied, writing them explicitly gives the same result. Deleting them allows future Windows versions to choose their own values if those change.
The research and the tools used belong to the BoosterX developer, so the developer has a direct interest in the results. The methodology and the scope of applicability are described above, and the conclusions can be verified against open data and the listed public sources.
Sources
Section titled “Sources”- Timeout Detection and Recovery, Microsoft Learn, checked 2026-09-01.
- TDR registry keys, Microsoft Learn, checked 2026-09-19.
Public sources checked: 2026-09-19.
Change history
Section titled “Change history”- 2026-09-20: added a conflict-of-interest disclaimer.
- 2026-09-19: added
TdrDelayandTdrDebugModewith default values, the observation of reading the full TDR block in the boot trace; the source of the TDR keys was rechecked. - 2026-09-02: first publication; the reading and normalization of the parameters were confirmed, and the boundaries of the effect on GPU recovery were added.
