Aby se zabránilo zablokování jakéhokoli vykreslování nebo výpočtu GPU , operační systém Windows omezí ovladač GPU vždy, když vykreslení trvá déle než několik sekund . Když je ovladač usmrcen , aplikace s ním automaticky zhroutí . Jelikož nemůžeme vědět, jak dlouho bude vykreslení nebo výpočet trvat (záleží na GPU, ovladačích, operačním systému, velikosti oka, velikosti textury apod.) Nemůžeme omezit, kolik počítač potřebuje času, může zpracovávat a vyhnout se havárii.
V systému Windows je v registru klíč, který určuje, jak dlouho by měl systém čekat před zabitím volání ovladače. Aplikace nemají oprávnění přímo měnit toto nastavení, tento postup je třeba provést ručně.
TdrLevel
TdrLevel Určuje počáteční úroveň obnovy. Výchozí hodnota se obnoví v časovém limitu.
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrLevel
ValueType : REG_DWORD
ValueData : TdrLevelOff
(0) - Detection disabled TdrLevelBugcheck
(1) - Bug check on detected timeout, for example, no recovery. TdrLevelRecoverVGA
(2) - Recover to VGA (not implemented). TdrLevelRecover (3) - Recover on timeout. This is the default value.
TdrDelay
TdrDelay Určuje počet sekund, kdy GPU může odložit požadavek na předběžný výpis z plánovače GPU. Je to prahová hodnota časového limitu. Výchozí hodnota je 2 sekundy.
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrDelay
ValueType : REG_DWORD
ValueData : Number of seconds to delay. 2 seconds is the default value.
TdrDdiDelay
TdrDdiDelay Určuje počet sekund, které operační systém povoluje vlákna opustit ovladač. Po uplynutí určité doby operační systém chybu kontroluje počítač s kódem VIDEO_TDR_FAILURE (0x116). Výchozí hodnota je 5 sekund.
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrDdiDelay
ValueType : REG_DWORD
ValueData : Number of seconds to leave the driver. 5 seconds is the default value.
TdrTestMode
TdrTestMode Rezervováno. Nepoužívat.
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrTestMode
ValueType : REG_DWORD
ValueData : Do not use.
TdrDebugMode
TdrDebugMode Určuje chování procesů TDR související s ladění. Výchozí hodnota je TDR_DEBUG_MODE_RECOVER_NO_PROMPT, což znamená, že se nerozbije do ladicího programu.
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrDebugMode
ValueType : REG_DWORD
ValueData : TDR_DEBUG_MODE_OFF (0) - Break to kernel debugger before the recovery to allow investigation of the timeout.
TDR_DEBUG_MODE_IGNORE_TIMEOUT (1) - Ignore any timeout.
TDR_DEBUG_MODE_RECOVER_NO_PROMPT (2) - Recover without breaking into the debugger. This is the default value.
TDR_DEBUG_MODE_RECOVER_UNCONDITIONAL (3) - Recover even if some recovery conditions are not met (for example, recover on consecutive timeouts).
TdrLimitTime
TdrLimitTime Podporováno v systému Windows Server 2008 a novějších verzích a Windows Vista s aktualizací Service Pack 1 (SP1) a novějších verzích.
Určuje výchozí čas, ve kterém je povolen určitý počet jednotek TDR (zadaných klíčem TdrLimitCount ), aniž by došlo k zhroucení počítače. Výchozí hodnota je 60 sekund.
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrLimitTime
ValueType : REG_DWORD
ValueData : Number of seconds before crashing. 60 seconds is the default value.
TdrLimitCount
TdrLimitCount Podporováno v systému Windows Server 2008 a novějších verzích a Windows Vista s aktualizací Service Pack 1 (SP1) a novějších verzích.
Určuje výchozí počet jednotek TDR (0x117), které jsou povoleny v čase určeném klíčem TdrLimitTime bez narušení počítače. Výchozí hodnota je 5.
KeyPath : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers
KeyValue : TdrLimitCount
ValueType : REG_DWORD
ValueData : Number of TDRs before crashing. The default value is 5.
1 – Otevřete okno Spustit
Klikněte na nabídku Start a pak Spustit nebo stiskněte Windows a klávesy R .
Otevře se okno Spustit .
2 – Přejděte do klíče registru GraphicsDrivers
Otevře se okno registru.
V levém podokně přejděte do stromu na klávesu GraphicsDrivers tak, že přejdete do:
Počítač \ HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ GraphicsDrivers
3 – Přidání nebo úprava hodnoty TdrDelay
Pokud hodnota TdrDelay dosud neexistuje , klepněte pravým tlačítkem myši v pravém podokně a zvolte Nový> Hodnota DWORD (32bit) . Název ” TdrDelay “. Pokud je tento případ důležitý, postupujte podle něj (a zkontrolujte, zda nejsou žádné další znaky, například mezery).
V pravém podokně poklepejte na hodnotu TdrDelay . Změňte nastavení základny na desetinnou hodnotu . Nastavte hodnotu na jiný než výchozí 2 (doporučujeme 60 ).
Tato hodnota udává v sekundách, jak dlouho bude operační systém čekat, než zváží, že GPU během výpočtu nereaguje.
Pokud hodnota TdrDdiDelay neexistuje , klepněte pravým tlačítkem myši v pravém podokně a zvolte Nový> Hodnota DWORD (32bit) . pojmenujte to ” TdrDdiDelay “. Pokud je tento případ důležitý, postupujte podle něj (a zkontrolujte, zda nejsou žádné další znaky, například mezery).
V pravém podokně poklepejte na hodnotu TdrDdiDelay . Změňte nastavení základny na desetinnou hodnotu . Nastavte hodnotu na jiný než výchozí 5 (doporučujeme 60 ).
Tato hodnota označuje v sekundách, jak dlouho bude operační systém čekat, než zváží, že software potřeboval příliš mnoho času, aby opustil ovladače GPU.
Hexadecimal je výchozí hodnota, jednoduše přepnout na desetinnou hodnotu a zobrazit správnou hodnotu. Všimněte si, že 3C (šestnáctková) se rovná 60 (desetinná).
4 – Dokončete a restartujte
Zavřete editor registru. Restartujte počítač pomocí Spustit a pak restartovat .
TdrValue se jen dívá na to, kdy počítač začíná, takže je třeba vynutit obnovení restartem počítače.