Error "Display Driver Stopped Responding and Has Recovered"
Salah satu error yang paling sering muncul menyangkut VGA card Nvidia atau ATI adalah error "Display driver stopped responding and has recovered".
Secara umum, display driver yang dimaksud adalah nvlddmkm. Tapi
pengguna card AMD/ATI akan menemukan error pada atikmdag, sednagkan
pengguna card lain hanya menemukan error pada nomor driver. Lantas apa
penyebab masalah ini? Rupanya semua disebabkan oleh Windows service
bernama Timeout Detection And Recovery (TDR).
APA ITU TDR ???
**************
TDR diperkenalkan sejak perilisan Windows Vista dan hadir pula dalam
Windows 7 dan Windows 8. Fungsi TDR adalah untuk mendeteksi momen hang.
Begitu momen itu terdeteksi, TDR akan otomatis berusaha untuk
menyelesaikan masalah itu tanpa memaksa pengguna untuk reboot. Dalam
kasus VGA card, saat display hang, TDR akan memanggil fungsi driver
miniport bernama DxgkDdiResetFromTimeout untuk mereboot driver dan
mereset Graphic Processing Unit (GPU). Saat TDR aktif, selain pesan
error, monitor akan nampak flickering (goyang sesaat) yang terjadi
karena sebagian graphic stack direset oleh Windows.
Lantas apakah TDR harus dimatikan? Jawabannya: JANGAN!!! Kehadiran TDR
justru sangat membantu pengguna. Tanpa TDR, masalah VGA card akan
menimbulkan Blue Screen of Death.
CARA KERJA TDR
**************
Inilah cara kerja TDR yang mengakibatkan driver error:
1. Deteksi Timeout
GPU scheduler, bagian dari sub-sistem kernel grafis DirectX
(Dxgkrnl.sys) mendeteksi GPU memakan waktu yang lebih lama dari yang
diizinkan untuk melaksanakan sebuah tugas. GPU scheduler mencoba
menghentikan tugas itu dalam alokasi waktu tertentu (timeout). Timeout
yang diizinkan Windows adalah 2 detik. Jika GPU tidak mampu
menyelesaikan tugasnya atau menghentikan tugas itu dalam 2 detik, maka
Windows memberikan vonis: hang. Demi menghindari deteksi timeout,
produsen hardware memastikan bahwa operasi grafis (disain, gaming) tidak
memakan waktu di atas 2 detik.
2. Persiapan Recovery
GPU scheduler memanggil driver miniport display: DxgkDdiResetFromTimeout
untuk memberitahu driver bahwa Windows mendeteksi timeout. Driver lalu
melakukan reset pada dirinya dan juga pada GPU. Selain itu, driver
kemudian dilarang mengakses memory dan hardware.
3. Desktop Recovery
Windows mereset graphics stack. Video memory manager (bagian
Dxgkrnl.sys) membuang semua alokasi memory video. Driver miniport
display mereset GPU. Graphics stack kemudian mengambil alih dan
merestorasi desktop agar bisa dikendalikan pengguna. Di saat inilah,
pengguna mendapat notifikasi error bahwa driver berhenti bekerja dan
kini sudah direcover.
PENYEBAB TDR
**************
Jika komputer kamu baru dibeli tapi sudah langganan TDR, maka kamu harus
segera membawanya ke toko untuk diganti. Tapi jika komputer kamu adalah
komputer lama, maka harus dicari penyebab TDR. Berikut beberapa alasan
kenapa TDR menyala:
* Voltase atau memory timing yang tidak sesuai
* PSU error/ kurang daya
* Driver korup
* Overheating
* RAM rusak/ longgar
* Overclocks (GPU/CPU) tidak stabil
* VGA card rusak
* Konflik driver (baik antar driver VGA ataupun dengan driver hardware lain)
* Setting VGA card terlalu berat
* Debu
* Driver alami glitch/bug (misal: ada orang melaporkan error saat browsing dng driver 280.xx, 285.xx, 290.xx)
SOLUSI
************
Tergantung masalahnya, ada beberapa solusi yang bisa dicoba:
1. Update driver kamu dengan versi terbaru yg sesuai jenis Windows,
jenis komputer, dan ukuran bit. Jangan lupa untuk menghapus driver
sebelumnya sebersih-bersihnya dengan Display Driver Uninstaller
2. Jika kamu menginstall beberapa GPU Tools (EVGA Precision, MSI Afterburner), hapus karena hanya boleh ada SATU GPU Tool saja.
3. Jika error hanya terjadi pada game tertentu, cari patch untuk game itu.
4. Jika error terjadi karena kamu menginstall hardware baru, coba copot
hardware itu. Jika terjadi saat update driver, coba roll-back ke versi
terdahulu.
5. Cek suhu dengan Everest Ultimate Edition atau OCCT's GPU Stress Test.
Jika suhu ternyata tinggi, gunakan EVGA Precision untuk tingkatkan
kecepatan kipas GPU.
6. Bongkar pasang VGA card kamu. Pastikan tidak longgar. Dan pastikan
semua debu sudah dibersihkan (disarankan dengan memakai tabung udara
berkompresi/ canned air).
7. Periksa RAM kamu.
8. Hapus semua setting overclock: termasuk CPU dan GPU.
9. Reset CMOS dengan mencabut batere motherboard selama 5 menit agar
BIOS kembali ke setting default. Setelah reset, masuk ke BIOS dan cek
memory timings/voltase.
10. Jika kamu curiga VGA card kamu bermasalah, coba pasang di komputer lain untuk pengetesan.
11. Cek PSU kamu, pastikan dayanya cukup.
REFERENSI SOFTWARE
********************
Untuk mencari biang kerok penyebab TDR, kamu wajib mengetes komputer
kamu, mengukur suhu, dll. Meski saya sudah menyebut beberapa nama
software di atas, tapi saya memiliki referensi software serupa. Jadi
bila salah satu tidak tersedia, masih ada cadangan software lain yang
bisa dicoba.
Program untuk stress-testing CPU:
- Prime95 (jalankan selama beberapa jam!)
- Intel Burntest (jalankan beberapa kali)
- OCCT
Program untuk stress-testing GPU:
- OCCT
- 3DMark Vantage
- 3DMark 11 (hanya untuk GPU DX11!!!)
Program untuk memonitor suhu:
- EVGA Precision (suhu GPU saja)
- MSI Afterburner (suhu GPU saja)
- Everest Ultimate Edition (sekarang dinamai AIDA 64)
- CoreTemp (suhu CPU saja)
- RealTemp (suhu CPU saja)
- OCCT
Terimakasih infonya sangat ngebantu
Nice share