Ir al contenido

GPU TDR en Windows 11: TdrLevel, retrasos y límite de reintentos

En esta página

Timeout Detection and Recovery (TDR) detecta bloqueos de la GPU. Si la GPU no responde en el tiempo asignado, Windows intenta restaurar el funcionamiento del subsistema gráfico. Aumentar el tiempo de espera o desactivar la recuperación cambia la reacción al bloqueo, pero no acelera la GPU.

Se comprobó si el subsistema gráfico lee los parámetros TDR enumerados, cómo se normalizan sus valores y qué cambia al aumentar el tiempo de espera o desactivar la recuperación.

Windows 11 25H2 build 26200.9168, subsistema gráfico dxgkrnl.exe con modelo de controlador WDDM. Las GPU físicas y los controladores concretos no se incluyeron en la muestra.

Cotejo estático de los parámetros con el código de dxgkrnl.exe, verificación de los rangos de normalización y contraste con la documentación pública de Microsoft.

Registry path Value Type Default Rol
HKLM\SYSTEM\CurrentControlSet\Control\GraphicsDrivers TdrLevel REG_DWORD 3 nivel de TDR recovery
la misma ruta TdrDelay REG_DWORD 2 segundos tiempo de espera principal de la GPU
la misma ruta TdrDdiDelay REG_DWORD 5 segundos retardo de DDI recovery
la misma ruta TdrDodPresentDelay REG_DWORD 2 segundos delay para display-only present
la misma ruta TdrDodVSyncDelay REG_DWORD 2 segundos delay para display-only VSync
la misma ruta TdrLimitCount REG_DWORD 5 número de reintentos permitidos
la misma ruta TdrLimitTime REG_DWORD 60 segundos ventana de conteo de TDR

Los valores admitidos son 0..3: 0 desactiva la detección de bloqueos, 1 provoca una parada de emergencia de Windows al superarse el tiempo de espera, 2 designa una recuperación no implementada en VGA, 3 activa la recuperación estándar. Un valor fuera del rango se normaliza a 3. El parámetro se lee dxgkrnl.exe durante la inicialización del subsistema gráfico.

Deje el valor predeterminado: desactivar la recuperación aumenta el riesgo de que el escritorio se bloquee, tras lo cual habrá que reiniciar el sistema. Un cambio temporal solo está justificado al diagnosticar un caso concreto en el que el controlador supera el tiempo de espera.

TdrDelay es el parámetro principal del tiempo de espera de la GPU: el número de segundos durante los cuales la GPU puede posponer una solicitud del planificador de GPU para el desalojo; según la documentación de Microsoft, es el umbral de timeout real. El valor predeterminado documentado es 2 segundos. TdrDebugMode define el comportamiento de depuración de TDR: de forma predeterminada se usa la recuperación sin detención en el depurador, otros modos implican la detención en el depurador del kernel antes de la recuperación, la omisión de los timeouts o la recuperación incondicional. Microsoft documenta ambas claves para probar y depurar controladores e indica directamente que los usuarios finales no deben cambiarlas.

TdrDdiDelay define el retardo para DDI. Los tres parámetros de retardo DDI/DOD se miden en segundos y tienen un rango efectivo de 1..900: 0 se convierte en 1, un valor superior a 900 se limita a 900.

TdrDodPresentDelay y TdrDodVSyncDelay pertenecen al kernel-mode display-only driver (KMDOD) y Microsoft solo los documenta para depuración. En un controlador WDDM normal de una GPU discreta no son un ajuste universal de timeout.

TdrLimitCount tiene un rango efectivo de 1..32 y un valor predeterminado de 5. Funciona junto con TdrLimitTime, que de forma predeterminada es de 60 segundos. Windows cuenta las recuperaciones durante ese periodo; una vez agotado el límite, la reacción a los siguientes bloqueos se vuelve más severa.

Al aumentar el tiempo de espera, la GPU dispone de más tiempo antes de la recuperación y la aplicación permanece sin responder durante más tiempo. Al reducirlo, el problema se detecta antes, pero la recuperación puede activarse con más frecuencia durante una operación prolongada normal.

  • Las rutas, los tipos y los valores predeterminados de los parámetros en la build estudiada.
  • La lectura de los parámetros durante la inicialización del subsistema gráfico.
  • La normalización de los valores fuera del rango admitido.
  • La finalidad documentada de los parámetros KMDOD solo para depuración.
  • En la traza de arranque de la misma build, el subsistema gráfico leyó todo el bloque TDR de una vez durante la inicialización: TdrLevel, TdrDelay, TdrDdiDelay, TdrDodPresentDelay, TdrDodVSyncDelay, TdrLimitCount, TdrLimitTime y TdrDebugMode; todas las entradas estaban ausentes, es decir, se aplican los valores predeterminados (observación de BoosterX Research, la lectura de TdrDelay y TdrDebugMode en esta traza quedó registrada, la normalización de sus valores no se comprobó por separado).
  • El efecto del cambio en GPU, controladores y juegos concretos.
  • La utilidad de aumentar el timeout o desactivar la recuperación fuera del diagnóstico.
  • El comportamiento en otras builds de Windows.

Deje los valores predeterminados. Un cambio temporal del tiempo de espera o del límite de reintentos solo está justificado al diagnosticar un bloqueo concreto del controlador y con una forma preparada de revertir la configuración.

Devuelva los valores predeterminados o elimine las entradas opcionales. El cambio surte efecto en la siguiente inicialización del subsistema gráfico.

La lectura de los parámetros se confirmó en Windows 11 25H2 build 26200.9168. Su efecto depende del controlador WDDM, del modelo de GPU, del modo display-only y de la causa del bloqueo.

Para volver a la configuración predeterminada, elimine estos valores opcionales. Si no hay entradas, el subsistema gráfico usa los valores predeterminados. En la build estudiada, su escritura explícita da el mismo resultado. La eliminación permite que las futuras versiones de Windows elijan sus propios valores si estos cambian.

La investigación y las herramientas utilizadas pertenecen al desarrollador de BoosterX, por lo que el desarrollador tiene un interés directo en los resultados. La metodología y los límites de aplicabilidad se describen arriba, y las conclusiones pueden verificarse con los datos abiertos y las fuentes públicas enumeradas.

Fuentes públicas verificadas: 2026-09-19.

  • 2026-09-20: añadido el descargo de responsabilidad sobre el conflicto de intereses.
  • 2026-09-19: añadidos TdrDelay y TdrDebugMode con valores predeterminados, la observación de la lectura del bloque TDR completo en la traza de arranque; la fuente de las claves TDR se verificó de nuevo.
  • 2026-09-02: primera publicación; confirmadas la lectura y la normalización de los parámetros, añadidos los límites del efecto en la recuperación de la GPU.