Přeskočit na obsah

GPU TDR ve Windows 11: TdrLevel, zpoždění a limit opakování

Na této stránce

Timeout Detection and Recovery (TDR) detekuje zaseknutí GPU. Pokud GPU neodpovídá po stanovenou dobu, Windows se pokusí obnovit činnost grafického subsystému. Prodloužení doby čekání nebo vypnutí obnovy mění reakci na zaseknutí, ale GPU nezrychluje.

Zkoumalo se, zda grafický subsystém čte uvedené parametry TDR, jak se normalizují jejich hodnoty a co mění prodloužení doby čekání nebo vypnutí obnovy.

Windows 11 25H2 build 26200.9168, grafický subsystém dxgkrnl.exe s WDDM modelem ovladače. Fyzické GPU a konkrétní ovladače do vzorku zahrnuty nebyly.

Statické porovnání parametrů s kódem dxgkrnl.exe, ověření rozsahů normalizace a srovnání s veřejnou dokumentací Microsoft.

Registry path Value Type Default Role
HKLM\SYSTEM\CurrentControlSet\Control\GraphicsDrivers TdrLevel REG_DWORD 3 úroveň TDR recovery
stejná cesta TdrDelay REG_DWORD 2 sekundy hlavní doba čekání GPU
stejná cesta TdrDdiDelay REG_DWORD 5 sekund zpoždění DDI recovery
stejná cesta TdrDodPresentDelay REG_DWORD 2 sekundy delay pro display-only present
stejná cesta TdrDodVSyncDelay REG_DWORD 2 sekundy delay pro display-only VSync
stejná cesta TdrLimitCount REG_DWORD 5 počet povolených opakování
stejná cesta TdrLimitTime REG_DWORD 60 sekund okno počítání TDR

Povolené hodnoty jsou 0..3: 0 vypíná detekci zaseknutí, 1 vyvolá nouzové zastavení Windows při překročení doby čekání, 2 označuje neimplementovanou obnovu ve VGA, 3 zapíná standardní obnovu. Hodnota mimo rozsah se normalizuje na 3. Parametr se čte dxgkrnl.exe při inicializaci grafického subsystému.

Ponechte výchozí hodnotu: vypnutí obnovy zvyšuje riziko zaseknutí plochy, po kterém bude nutné systém restartovat. Dočasná změna je opodstatněná jen při diagnostice konkrétního případu, kdy ovladač překračuje dobu čekání.

TdrDelay — hlavní parametr doby čekání GPU: počet sekund, o které může GPU odkládat požadavek plánovače GPU na vytěsnění; podle dokumentace Microsoft jde o skutečný práh timeoutu. Dokumentovaná výchozí hodnota je 2 sekundy. TdrDebugMode určuje ladicí chování TDR: ve výchozím stavu se používá obnova bez zastavení v ladicím programu, ostatní režimy znamenají zastavení v ladicím programu jádra před obnovou, ignorování timeoutů nebo bezpodmínečnou obnovu. Microsoft dokumentuje oba klíče pro testování a ladění ovladačů a přímo uvádí, že je koncoví uživatelé měnit nemají.

TdrDdiDelay určuje zpoždění pro DDI. Všechny tři parametry zpoždění DDI/DOD se měří v sekundách a mají efektivní rozsah 1..900: 0 se stává 1, hodnota vyšší než 900 se omezuje na 900.

TdrDodPresentDelay a TdrDodVSyncDelay se vztahují ke kernel-mode display-only driver (KMDOD) a Microsoft je dokumentuje pouze pro ladění. Na běžném WDDM ovladači diskrétní GPU nejsou univerzálním nastavením timeoutu.

TdrLimitCount má efektivní rozsah 1..32 a výchozí hodnotu 5. Funguje společně s TdrLimitTime, který je ve výchozím stavu 60 sekund. Windows počítá obnovy za toto období; po vyčerpání limitu se reakce na další zaseknutí zostří.

Při prodloužení doby čekání má GPU více času do obnovy a aplikace zůstává déle bez odezvy. Při zkrácení se problém detekuje rychleji, ale obnova může častěji zasáhnout během dlouhé běžné operace.

  • Cesty, typy a výchozí hodnoty parametrů ve zkoumaném buildu.
  • Čtení parametrů při inicializaci grafického subsystému.
  • Normalizace hodnot mimo povolený rozsah.
  • Dokumentované určení parametrů KMDOD pouze pro ladění.
  • V trasování spouštění téhož buildu grafický subsystém při inicializaci přečetl celý blok TDR najednou — TdrLevel, TdrDelay, TdrDdiDelay, TdrDodPresentDelay, TdrDodVSyncDelay, TdrLimitCount, TdrLimitTime a TdrDebugMode; všechny záznamy chyběly, to znamená, že se uplatňují výchozí hodnoty (pozorování BoosterX Research, čtení TdrDelay a TdrDebugMode v tomto trasování je zaznamenáno, normalizace jejich hodnot se samostatně neověřovala).
  • Vliv změny na konkrétní GPU, ovladače a hry.
  • Přínos prodloužení timeoutu nebo vypnutí obnovy mimo diagnostiku.
  • Chování na jiných buildech Windows.

Ponechte výchozí hodnoty. Dočasná změna doby čekání nebo limitu opakování je opodstatněná jen při diagnostice konkrétního zaseknutí ovladače a s připraveným způsobem, jak konfiguraci vrátit zpět.

Vraťte výchozí hodnoty nebo odstraňte volitelné záznamy. Změna vstoupí v platnost při příští inicializaci grafického subsystému.

Čtení parametrů je potvrzeno na Windows 11 25H2 build 26200.9168. Jejich vliv závisí na WDDM ovladači, modelu GPU, režimu display-only a příčině zaseknutí.

Pro návrat k výchozí konfiguraci odstraňte tyto volitelné hodnoty. Pokud záznamy chybí, grafický subsystém používá výchozí hodnoty. Ve zkoumaném buildu dává jejich explicitní zápis stejný výsledek. Odstranění umožňuje budoucím verzím Windows zvolit vlastní hodnoty, pokud se změní.

Výzkum a použité nástroje patří vývojáři BoosterX, proto má vývojář přímý zájem na výsledcích. Metodika a hranice použitelnosti jsou popsány výše a závěry lze ověřit podle otevřených dat a uvedených veřejných zdrojů.

Veřejné zdroje ověřeny: 2026-09-19.

  • 2026-09-20: přidán disclaimer o střetu zájmů.
  • 2026-09-19: přidány TdrDelay a TdrDebugMode s výchozími hodnotami, pozorování čtení celého bloku TDR v trasování spouštění; zdroj TDR klíčů znovu ověřen.
  • 2026-09-02: první publikace; potvrzeno čtení a normalizace parametrů, přidány hranice vlivu na obnovu GPU.