- Določite vpleteni gonilnik (nvlddmkm.sys, igdkmd64.sys, atikmdag.sys) in preverite dogodke TDR.
- Dajte prednost čisti namestitvi gonilnikov in poskusite različico Studio/stabilno, če uporabljate profesionalne aplikacije.
- Nadzira temperaturo in porabo energije; preprečuje preklapljanje med vgrajeno/deljeno grafično kartico (iGPU) pri visokih obremenitvah.
- Uporabite SFC/Popravilo zagona in le, če je to primerno, skrbno prilagodite TdrDelay.
Ko se vam računalnik sesuje sredi opravila in se prikaže strašljiv modri zaslon z VIDEO_TDR_FAILURE, normalno je misliti, da se je vse nenadoma pokvarilo; v resnici je sistem poskušal obnoviti grafični procesor po sesutju in ni uspel. Ta koda zaustavitve Tesno je povezan z grafičnim gonilnikom in mehanizmom za časovno omejitev, zaznavanje in obnovitev (TDR)., zato je razumevanje delovanja polovica rešitve.
V naslednjih vrsticah boste našli popoln vodnik, ki združuje uradno tehnično razlago s terenskimi postopki in triki, ki delujejo v resničnih scenarijih. Cilj je, da boste znali diagnosticirati, odpraviti in preprečiti to napako Ne glede na to, ali ste napreden uporabnik WinDbg ali imate raje preproste korake iz sistema Windows.
Kaj je VIDEO_TDR_FAILURE (0x00000116) in zakaj se prikaže?
Napaka VIDEO_TDR_FAILURE ustreza preverjanje napak 0x00000116 in označuje, da je Windows po časovni omejitvi poskušal ponastaviti gonilnik grafične kartice in grafično kartico, vendar neuspešno. Grafični podsistem sistema Windows spremlja grafično kartico s funkcijo TDR: če se grafična kartica zatakne in se ne odziva več, poskuša znova zagnati gonilnik, da obnovi namizje.
Ta mehanizem TDR ima privzeti časovnik približno 2 sekundi: če grafična naloga ni pravočasno končana ali če ponovni zagon gonilnika ni dokončan, se sproži preverjanje napak.
Ko je postopek obnovitve uspešen, se bo prikazalo sporočilo »Gonilnik zaslona se je nehal odzivati in se je obnovil«. Ko se sistem ne obnovi, ustavi izvajanje in prikaže modri zaslon z napako VIDEO_TDR_FAILURE..
Parametri preverjanja napak in kako jih interpretirati
Poleg kode 0x116 modri zaslon in izpisi pomnilnika vključujejo štiri parametre, ki pomagajo pri odpravljanju napake VIDEO_TDR_FAILURE. Poznavanje pomena posameznega parametra vodi pri diagnozi in pospešuje rešitev.:
| Parameter | opis |
|---|---|
| 1 | Kazalec na notranji kontekst obnovitve TDR (TDR_RECOVERY_CONTEXT), če je prisoten. |
| 2 | Naslov znotraj modula odgovornega voznika (uporablja se za identifikacijo vpletenega voznika). |
| 3 | Koda NTSTATUS zadnje neuspešne operacije, če je na voljo. |
| 4 | Kontekstualno odvisni interni podatki, ki so na voljo v določenih scenarijih. |
V resničnih sledeh je običajno vključena datoteka .sys grafičnega gonilnika: na primer, nvlddmkm.sys (NVIDIA), igdkmd64.sys (Intel) ali atikmdag.sys/atikmpag.sys (AMD/ATI). Ta namig je ključen: kaže na pot ponudnika in gonilnika, ki povzroča zrušitev..
Zakaj se to zgodi: tipični vzroki v resničnem svetu
Najpogostejši vzorec je, da grafični procesor ostane predolgo zaseden pod veliko obremenitvijo (igre, CAD, dekodiranje ali upodabljanje) in se ne odzove pravočasno. Od tam naprej, Najpogostejši sprožilci so:
- Zastareli ali okvarjeni gonilniki:
- Konflikti med integrirano in namensko grafično kartico.
- Pregrevanje
Poleg programske opreme je pri napaki VIDEO_TDR_FAILURE pomembna tudi strojna oprema: agresivno časovno omejeni pomnilniški moduli, preobremenjene matične plošče, nezadostno napajanje/moč, degradiran VRAM/GPU ali slabo hlajenje v kompaktnih prenosnikih. Če ima oprema zelo nizko temperaturo ali moč, TDR poskoči prej in pogosteje..
Obstajajo tudi okoljski dejavniki: preveč procesov v ozadju, ki tekmujejo za vire, Nedavne posodobitve so bile nameščene nepravilno ali so bili zastareli grafični paketi (DirectX, OpenGL, Vulkan). Sistem z veliko obremenitvijo ozadja in napačno poravnanimi grafičnimi komponentami je idealen kandidat za to preverjanje napak.

Diagnostika z WinDbg in dnevniki: kako prepoznati krivca
Če upravljate z izpisi pomnilnika (minidumpi), windbg vam bo omogočilo potrditev odgovornega gonilnika in neposrednega vzroka napake VIDEO_TDR_FAILURE. Ukaz v glavi je !analyze -v, ki ustvari povzetek preverjanja napak, vpleteni modul in najnovejši NTSTATUS..
kd> !analyze -v
VIDEO_TDR_FAILURE (116)
Attempt to reset the display driver and recover from timeout failed.
Arguments:
Arg1: <puntero TDR_RECOVERY_CONTEXT>
Arg2: <dirección en el módulo responsable>
Arg3: <código NTSTATUS último>
Arg4: <datos de contexto>
Začenši s parametrom 2, lahko z lmvm naštejete modul in preverite časovni žig, pot in velikost. Če se prikaže datoteka nvlddmkm.sys ali enakovredna datoteka, že imate glavnega osumljenca..
kd> lmvm nvlddmkm
start end module name
... nvlddmkm.sys
Image path: \SystemRoot\system32\DRIVERS\nvlddmkm.sys
Timestamp: <fecha>
S parametrom 1, ko je prisoten, je mogoče pregledati TDR_RECOVERY_CONTEXT in videti razlog za časovno omejitev, ki je bila povišana na ponovni zagon adapterja. To pomaga razlikovati med preprostim zastojem v cevovodu in ponavljajočo se napako pri ponastavitvi..
kd> dt dxgkrnl!_TDR_RECOVERY_CONTEXT <puntero>
+0x010 TimeoutReason : TdrEngineTimeoutPromotedToAdapterReset
...
Končno, sled sklada s k/kb/kp prikazuje pot kode, ki se zaključi s KeBugCheckEx, s funkcijama dxgkrnl in dxgmms1, značilnima za tok TDR. »Čist« sklad proti TdrResetFromTimeout potrjuje, da gre za pristen TDR in ne za splošno težavo jedra..
kd> k
# Child-SP RetAddr Call Site
00 ... nt!KeBugCheckEx
01 ... dxgkrnl!TdrBugcheckOnTimeout
02 ... dxgkrnl!ADAPTER_RENDER::Reset
03 ... dxgkrnl!DXGADAPTER::Reset
04 ... dxgkrnl!TdrResetFromTimeout
05 ... dxgmms1!VidSchiRecoverFromTDR
...
Koraki rešitve: od osnovnih do naprednih
Preden odprete urejevalnik registra ali zaženete razhroščevalnike, se osredotočite na metrike z najboljšim razmerjem med trudom in učinkom. Začnite z gonilniki, nato nadaljujte s čiščenjem/ponovno namestitvijo, in če je še vedno tako, se lotite naprednih nastavitev in preverjanja strojne opreme..
1) Pravilno posodobite grafični gonilnik in nabor čipov
Zastareli ali hroščati grafični gonilniki so najpogostejši vzrok za napake TDR. Pojdite v Upravitelja naprav, razširite možnost Grafične kartice, z desno tipko miške kliknite grafično kartico in izberite »Posodobi gonilnik«. Še bolje: prenesite priporočeno različico za vaš model z uradnega spletnega mesta NVIDIA/Intel/AMD..
Če uporabljate NVIDIA s profesionalno programsko opremo (CAD, urejanje, 3D), poskusite z gonilniki Studio namesto gonilnikov Game Ready. Na prenosnikih z Intel iGPU + NVIDIA dGPU namestite tudi najnovejši Intelov paket in nabor čipov od proizvajalca računalnika..
2) Čista ponovna namestitev gonilnikov (DDU)
Ko posodobitve, ki so na voljo brez recepta, niso dovolj, je dobro, da odstranite ostanke prejšnjega gonilnika. Orodje za odstranjevanje gonilnikov zaslona (DDU) odstrani komponente gonilnika, storitve in vnose v register. Priporočljivo je, da ga zaženete v varnem načinu in nato namestite na novo preneseni gonilnik..
Tipično zaporedje: varni način, DDU »Čiščenje in ponovni zagon«, običajen zagon sistema Windows in nato namestitev gonilnika, prenesenega s spletnega mesta proizvajalca. S tem postopkom se izognete konfliktom različic in poškodovanim datotekam, ki jih standardni namestitveni program ne odpravi vedno..
3) Poskusite s prejšnjo stabilno različico
Občasno se pri najnovejši različici pojavi regresija. V tem primeru uporabite »Prejšnji gonilnik« (če je na voljo) ali ročno namestite prejšnjo stabilno različico. Z grafičnimi procesorji NVIDIA številne težave s TDR v CAD-u izginejo, ko se vrnete na prejšnji gonilnik Studio..
Za ročno namestitev uporabite »Prebrskaj moj računalnik za programsko opremo gonilnika« in »Naj izberem s seznama razpoložljivih gonilnikov«, pri čemer izberite prejšnjo različico za vaš grafični procesor. Po končanem zagonu znova zaženite, da potrdite spremembo.
4) Popravite sistemske datoteke z SFC
Če se je težava pojavila po posodobitvi ali neuspešni namestitvi, zaženite preverjevalnik sistemskih datotek. Odprite CMD kot skrbnik in zaženite sfc /scannow. Windows bo preveril zaščitene binarne datoteke in samodejno zamenjal poškodovane..
sfc /scannow
Ko končate, znova zaženite računalnik in poskusite znova naložiti običajno grafiko, da vidite, ali je TDR izginil. Če SFC popravi datoteke, je to dober znak, da je prišlo do sistemske poškodbe, ki je vplivala na grafični sklad..
5) Popravilo zagona sistema Windows
Če se sporočilo TDR po prijavi ali odpiranju istih aplikacij ponavlja, zaženite popravilo zagona tako, da odprete Nastavitve > Posodobitev in varnost > Obnovitev > Napredni zagon > Odpravljanje težav > Napredne možnosti > Popravilo zagona. Windows bo poskušal popraviti storitve in zagonske komponente, ki se ne nalagajo pravilno..
Po popravilu preizkusite opremo z enakim vzorcem uporabe, ki je sprožil okvaro. Če se predvajanje ustavi, je šlo za delno težavo z zagonom ali poškodovane odvisnosti..
6) Varni način in ponovna namestitev gonilnikov
Varni način naloži minimalne gonilnike in omogoči odstranitev/ponovno namestitev brez prekinitve. V msconfig izberite »Varen zagon« ali do njega dostopajte prek naprednega zagona in tam odstranite adapter v upravitelju naprav. Nato namestite svež gonilnik, ki ste ga prenesli s strani proizvajalca.
V računalnikih z dvema grafičnima procesorjema ju odstranite in ponovno namestite ločeno: najprej integrirano (Intel), nato namensko (NVIDIA/AMD). To preprečuje, da bi Windows vmes ponovno vbrizgal neprimerno generično kodo..
7) Popravilo specifične datoteke gonilnika (AMD/NVIDIA)
Na grafičnih procesorjih AMD/ATI obstajajo primeri, ko regeneracija datoteke atikmdag.sys ali atikmpag.sys odpravi težavo. Preimenujte datoteko C:\Windows\System32\drivers tako, da dodate .old in jo razširite iz proizvajalčevega paketa. Ukaz expand ustvari novo datoteko .sys, ki jo nato kopirate v mapo z gonilniki..
expand.exe atikmdag.sy_ atikmdag.sys
expand -r atikmdag.sy_ atikmdag.sys
Za NVIDIA je ideja podobna kot pri datoteki nvlddmkm.sys: po odstranitvi preimenujte datoteko nvlddmkm.sys v .old, razširite datoteko NVLDDMKM.Sy_ in kopirajte ustvarjeno datoteko .sys v System32\DRIVERS. Ta zamenjava odstrani poškodovane datoteke, ki preživijo namestitve na površino..
Expand.exe NVLDDMKM.Sy_ NVLDDMKM.Sys
8) Začasno onemogočite Intelov vgrajeni grafični procesor, če pride do konfliktov
Če kot primarno grafično kartico uporabljate namensko grafično kartico (npr. NVIDIA), v upravitelju naprav onemogočite Intel HD/UHD, da preprečite težavno preklapljanje. Na nekaterih prenosnikih samodejno preklapljanje sproži TDR-je pri premikanju aplikacij med vgrajenim/dgrajenim grafičnim procesorjem..
Še bolj izpopolnjeno: v nadzorni plošči NVIDIA dodelite določen dGPU zahtevnim aplikacijam (acad.exe, igre) in pustite, da se ostalo izvede samodejno. Na ta način zmanjšate spremembe adapterja pri odpiranju/zapiranju oken in se izognete ponastavitvi grafičnega konteksta..
9) Preverite strojno opremo in termalne sisteme
Preverite temperature z zanesljivim orodjem: če grafična kartica preseže pragove in dušilke, se bodo pojavili TDR-ji. Očistite prah, po potrebi zamenjajte termalno pasto in zagotovite dobro prezračevanje. Pri prenosnikih lahko hladilna blazinica med dolgimi sejami bistveno vpliva..
Preveri RAM (orodje za diagnostiko pomnilnika sistema Windows) in stabilnost sistema brez pretiravanja. Agresivne nastavitve pomnilnika ali omejitve napetosti povzročajo nestabilnost pri obremenitvi grafike. Stabilnost procesorja/RAM-a/VRM-ja je prav tako pomembna kot sama grafična kartica..
10) Napredne nastavitve TDR (previdno)
Pri večjih obremenitvah, ki dejansko trajajo nekoliko dlje, lahko pomaga povečanje vrednosti TdrDelay. Pot: HKLM\System\CurrentControlSet\Control\GraphicsDrivers. Ustvarite/nastavite 32-bitno vrednost DWORD TdrDelay na 8–10 in znova zaženite računalnik. To ne odpravi slabih gonilnikov, vendar daje več manevrskega prostora pred razglasitvijo časovne omejitve..
Uporabite ga le, če ste že posodobili/očistili gonilnike in preverili termalne sisteme; če je težava v gonilniku, podaljšanje časa samo odloži BSOD. Če se po povečanju TdrDelay zrušitve nadaljujejo, se vrnite na 2 in popravite korensko napako..
Hiter kontrolni seznam, preden se težava lotimo reševanja
Če želite preveriti, ali ste odpravili težavo VIDEO_TDR_FAILURE, morate opraviti naslednje preglede:
- Preverite, ali se ponavljajoči se dogodki TDR med dolgo sejo z vašo običajno obremenitvijo ne prikazujejo več v pregledovalniku dogodkov. Če v resničnih pogojih preživite 30–60 minut brez TDR-ja, je rešitev zanesljiva..
- Izvedite zmeren stresni test (grafični primerjal ali kompleksen prizor v vaši aplikaciji) s spremljanjem temperatur. Stabilna grafična kartica vzdržuje stabilne taktove brez dušenja ali sprožanja napak..
- Naredite kopijo znanega dobrega gonilnika (in zabeležite različico), da boste lahko hitro povrnili stanje, če se bo težava ponovno pojavila v prihodnji posodobitvi. Preprečevanje prihrani ure, ko je čas za ponovno posodobitev..
Čeprav je napaka VIDEO_TDR_FAILURE strašljiva, jo je običajno mogoče odpraviti z naslednjim vrstnim redom in metodo: pravilen gonilnik, čista namestitev, nadzor temperature in po potrebi natančna nastavitev TDR-ja. S to kombinacijo ustvarjalne naloge, igre in CAD znova delujejo brez zrušitev..
Urednik, specializiran za tehnološka in internetna vprašanja, z več kot desetletnimi izkušnjami v različnih digitalnih medijih. Delal sem kot urednik in ustvarjalec vsebin za podjetja za e-trgovino, komunikacije, spletni marketing in oglaševanje. Pisal sem tudi na spletnih straneh s področja ekonomije, financ in drugih sektorjev. Moje delo je tudi moja strast. Zdaj pa skozi moje članke v Tecnobits, poskušam raziskati vse novosti in nove priložnosti, ki nam jih svet tehnologije ponuja vsak dan za izboljšanje našega življenja.

