Aller au contenu

GPU TDR dans Windows 11 : TdrLevel, délais et limite de répétitions

Sur cette page

Timeout Detection and Recovery (TDR) détecte les blocages du GPU. Si le GPU ne répond pas dans le délai imparti, Windows tente de rétablir le fonctionnement du sous-système graphique. Augmenter le temps d’attente ou désactiver la récupération modifie la réaction au blocage, mais n’accélère pas le GPU.

Nous avons vérifié si le sous-système graphique lit les paramètres TDR listés, comment leurs valeurs sont normalisées et ce que change l’augmentation du temps d’attente ou la désactivation de la récupération.

Windows 11 25H2 build 26200.9168, sous-système graphique dxgkrnl.exe avec modèle de pilote WDDM. Les GPU physiques et les pilotes spécifiques n’étaient pas inclus dans l’échantillon.

Correspondance statique des paramètres avec le code dxgkrnl.exe, vérification des plages de normalisation et confrontation avec la documentation publique de Microsoft.

Registry path Value Type Default Роль
HKLM\SYSTEM\CurrentControlSet\Control\GraphicsDrivers TdrLevel REG_DWORD 3 niveau de récupération TDR
même chemin TdrDelay REG_DWORD 2 secondes temps d’attente principal du GPU
même chemin TdrDdiDelay REG_DWORD 5 secondes délai de récupération DDI
même chemin TdrDodPresentDelay REG_DWORD 2 secondes délai pour display-only present
même chemin TdrDodVSyncDelay REG_DWORD 2 secondes délai pour display-only VSync
même chemin TdrLimitCount REG_DWORD 5 nombre de répétitions autorisées
même chemin TdrLimitTime REG_DWORD 60 secondes fenêtre de comptage TDR

Les valeurs autorisées sont 0..3 : 0 désactive la détection des blocages, 1 provoque l’arrêt d’urgence de Windows en cas de dépassement du temps d’attente, 2 désigne une récupération non implémentée en VGA, 3 active la récupération standard. Une valeur hors plage est normalisée vers 3. Le paramètre est lu dxgkrnl.exe lors de l’initialisation du sous-système graphique.

Laissez la valeur par défaut : désactiver la récupération augmente le risque de blocage du bureau, après quoi il faudra redémarrer le système. Une modification temporaire ne se justifie que lors du diagnostic d’un cas précis où le pilote dépasse le temps d’attente.

TdrDelay — le paramètre principal du temps d’attente du GPU : le nombre de secondes pendant lesquelles le GPU peut différer une demande du planificateur GPU de préemption ; selon la documentation Microsoft, c’est le seuil de timeout effectif. La valeur par défaut documentée est 2 secondes. TdrDebugMode définit le comportement de débogage de TDR : par défaut, la récupération est utilisée sans arrêt dans le débogueur, les autres modes signifient un arrêt dans le débogueur du noyau avant la récupération, l’ignorance des timeouts ou une récupération inconditionnelle. Microsoft documente les deux clés pour le test et le débogage des pilotes et indique explicitement que les utilisateurs finaux ne doivent pas les modifier.

TdrDdiDelay définit le délai pour le DDI. Les trois paramètres de délai DDI/DOD sont mesurés en secondes et ont une plage effective de 1..900 : 0 devient 1, une valeur supérieure à 900 est limitée à 900.

TdrDodPresentDelay et TdrDodVSyncDelay concernent le kernel-mode display-only driver (KMDOD) et ne sont documentés par Microsoft que pour le débogage. Sur un pilote WDDM ordinaire de GPU discrète, ils ne constituent pas un réglage universel du timeout.

TdrLimitCount a une plage effective de 1..32 et une valeur par défaut de 5. Il fonctionne avec TdrLimitTime, qui vaut par défaut 60 secondes. Windows compte les récupérations sur cette période ; une fois la limite épuisée, la réaction aux blocages suivants devient plus stricte.

En augmentant le temps d’attente, le GPU dispose de plus de temps avant la récupération, mais l’application reste plus longtemps sans réponse. En le diminuant, le problème est détecté plus vite, mais la récupération peut se déclencher plus souvent pendant une longue opération normale.

  • Les chemins, les types et les valeurs par défaut des paramètres dans la build étudiée.
  • La lecture des paramètres lors de l’initialisation du sous-système graphique.
  • La normalisation des valeurs hors plage autorisée.
  • La destination documentée des paramètres KMDOD uniquement pour le débogage.
  • Dans la trace de démarrage de la même build, le sous-système graphique a lu tout le bloc TDR d’un coup lors de l’initialisation — TdrLevel, TdrDelay, TdrDdiDelay, TdrDodPresentDelay, TdrDodVSyncDelay, TdrLimitCount, TdrLimitTime et TdrDebugMode ; toutes les entrées étaient absentes, c’est-à-dire que les valeurs par défaut s’appliquent (observation BoosterX Research, la lecture de TdrDelay et TdrDebugMode dans cette trace est constatée, la normalisation de leurs valeurs n’a pas été vérifiée séparément).
  • L’effet d’une modification sur des GPU, pilotes et jeux précis.
  • L’utilité d’augmenter le timeout ou de désactiver la récupération en dehors du diagnostic.
  • Le comportement sur d’autres builds de Windows.

Laissez les valeurs par défaut. Une modification temporaire du temps d’attente ou de la limite de répétitions ne se justifie que lors du diagnostic d’un blocage précis du pilote et avec un moyen prêt de rétablir la configuration.

Rétablissez les valeurs par défaut ou supprimez les entrées facultatives. La modification prend effet lors de la prochaine initialisation du sous-système graphique.

La lecture des paramètres est confirmée sur Windows 11 25H2 build 26200.9168. Leur effet dépend du pilote WDDM, du modèle de GPU, du mode display-only et de la cause du blocage.

Pour revenir à la configuration par défaut, supprimez ces valeurs facultatives. En l’absence d’entrées, le sous-système graphique utilise les valeurs par défaut. Sur la build étudiée, leur écriture explicite donne le même résultat. La suppression permet aux futures versions de Windows de choisir leurs propres valeurs si celles-ci changent.

L’étude et les outils utilisés appartiennent au développeur de BoosterX, le développeur a donc un intérêt direct aux résultats. La méthodologie et les limites d’applicabilité sont décrites ci-dessus, et les conclusions peuvent être vérifiées à partir des données ouvertes et des sources publiques listées.

Sources publiques vérifiées : 2026-09-19.

  • 2026-09-20: ajout d’un avertissement sur le conflit d’intérêts.
  • 2026-09-19: ajout de TdrDelay et TdrDebugMode avec les valeurs par défaut, observation de la lecture du bloc TDR complet dans la trace de démarrage ; la source des clés TDR a été revérifiée.
  • 2026-09-02: première publication ; lecture et normalisation des paramètres confirmées, ajout des limites de l’effet sur la récupération du GPU.