Timeout Detection and Recovery
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). This mitigates the scenario where the 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.[1]
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]
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, else a BSOD might ensue.[1]
See also
References
- ^ a b c d "Timeout detection and recovery (TDR) - Windows drivers". Retrieved 2022-03-23.
Further reading