Jump to content

Timeout Detection and Recovery

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Rageking890 (talk | contribs) at 14:20, 23 March 2023. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Timeout Detection and Recovery or TDR is a feature of the Windows operating system (OS) introduced in Windows Vista. It detects response problems from a graphics card (GPU), and if a timeout occurs, the OS will attempt a card reset to recover a functional and responsive desktop environment. However, if the attempt was unsuccessful, it results in the Blue Screen of Death (BSOD). The recovery tries to mitigate the scenario where an end user superfluously reboots their device should it become unresponsive.[1]

Timeline

When the GPU takes more than the allotted time to process a request, the system's GPU scheduler will pick up the anomaly. It then tries to preempt the particular task, this operation has the TDR timeout which is 2 seconds by default.[1][2]

Once the timeout is up and the task is not completed or preempted, the kernel determines that the GPU is frozen and proceeds to inform the respective driver about the detected timeout. It is then the driver's responsibility to properly reset and reinitialize the underlying GPU.[1][2]

The OS will then do a bunch of other recovery steps needed for the system to regain responsiveness. If the entire operation was successful, the end user might see some visual artefacts and a message will be shown on the screen describing what had happened ("Display driver stopped responding and has recovered."), else a BSOD might ensue.[1][2]

Possible causes

There are multiple probable causes should a recovery fail, causing an inevitable BSOD:[2][3]

BSOD stop codes

Possible BSOD stop codes emitted if the attempted recovery failed:

  • VIDEO_TDR_FAILURE (Bug check value: 0x116), recovery and resetting of display driver from a TDR timeout failed.[2][4]

See also

References

  1. ^ a b c d Microsoft. "Timeout detection and recovery (TDR) - Windows drivers". Retrieved 2022-03-23.
  2. ^ a b c d e Microsoft. "Bug Check 0x116 VIDEO_TDR_FAILURE - Windows drivers | Microsoft Learn". Retrieved 2022-03-23.
  3. ^ AMD. "How to Troubleshoot Timeout Detection and Recovery Errors | AMD". Retrieved 2023-03-23.
  4. ^ "Blue Screen of Death Windows 11 and 10 Error Codes List [BSOD]". Retrieved 2022-03-23.

Further reading