The "Display driver nvlddmkm stopped responding and has successfully recovered." or "Display driver atikmdag stopped responding and has successfully recovered." message is from a fail-safe built into later operating systems that stops a system freeze that is caused during the course of the GPU functioning (though it doesn't necessarily indicate a graphics card problem).
This means several things:
1: What this error really means is that your system is freezing when you're using applications. All the TDR function really does is stop freezes in programs by trying to reset the display driver/graphics card.
This means that this message can come as a result of any problem that can cause a system freeze (and might self-correct with a display reset).
Typical Examples:
Graphics Card Problems
RAM Problems
Power Supply Problems
CPU Problems
2: This error message is just like a fever. It's not a problem in and of itself, rather it is a symptom that can be caused by many different problems. As such, any standard solution that helps one person may not help another.
Common Solutions Include:
Using a Different Display Driver Version
(if using an Nvidia card and a 64-bit OS, try this link if the normal Nvidia drivers don't help: http://downloads.guru3d.com/Forceware-182.47-Vista-64-bit-download-2226.html )
Disabling PhysX
Down-clocking Video Card
Replacing a Faulty Video Card
Cooling / Heat Build-up Issues
Reducing Memory Timing
Replacing Memory
Reducing Number of Devices Connected to Power Supply
Replacing Power Supply
Checking the CPU for bent pins
Checking thermal contact between CPU and Heat-sink
Replacing the CPU
Checking to see if Heat-sink is seated properly
3: This mechanism can be disabled (for debugging purposes) by adding a REG_DWORD named TdrLevel to the registry at: HKLM\System\CurrentControlSet\Control\GraphicsDrivers and assigning it a value of '0'. Doing this will simply stop the TDR from resetting your display driver (this may simply tell your computer to allow itself to freeze instead, read on).
Another thing you can try (for debugging purposes) is adding a REG_DWORD named TdrDelay instead of the TdrLevel entry. This entry specifies the number of seconds that the TDR will wait before resetting the GPU/Driver. The default value is 2 seconds, so you can up to to 4 or 10 seconds to see if your system regains responsiveness. Don't leave it at the default value of '0' that's put in when you create the key.
Keep in mind that in most cases these registry entries will not be there and you will have to create them. NEVER mess with the registry if you don't know what you are doing.
To remove the keys (after debugging), simply use the Find function and match it to TdrLevel or TdrDelay and delete the entry.
Source: http://www.microsoft.com/whdc/device/display/wddm_timeout.mspx#E1B
See if any of these solutions help you. If they do (or don't), post your results here. This is a common enough error that building up a reasonable cache of knowledge for people with the problem will help future generations of frustrated users.
Cheers,
-Anshar
P.S. - Sometimes switching to older drivers (especially like the ones in my link above) will cause instability in Flash video in a browser (i.e. your games will work perfectly, but Flash video will crash you). All you have to do is right click a Flash video (after pausing it so it doesn't crash) and go to Settings. Uncheck Hardware Acceleration, close the options window, and close your browser / restart your computer. I had this issue and that solved it.
This means several things:
1: What this error really means is that your system is freezing when you're using applications. All the TDR function really does is stop freezes in programs by trying to reset the display driver/graphics card.
This means that this message can come as a result of any problem that can cause a system freeze (and might self-correct with a display reset).
Typical Examples:
Graphics Card Problems
RAM Problems
Power Supply Problems
CPU Problems
2: This error message is just like a fever. It's not a problem in and of itself, rather it is a symptom that can be caused by many different problems. As such, any standard solution that helps one person may not help another.
Common Solutions Include:
Using a Different Display Driver Version
(if using an Nvidia card and a 64-bit OS, try this link if the normal Nvidia drivers don't help: http://downloads.guru3d.com/Forceware-182.47-Vista-64-bit-download-2226.html )
Disabling PhysX
Down-clocking Video Card
Replacing a Faulty Video Card
Cooling / Heat Build-up Issues
Reducing Memory Timing
Replacing Memory
Reducing Number of Devices Connected to Power Supply
Replacing Power Supply
Checking the CPU for bent pins
Checking thermal contact between CPU and Heat-sink
Replacing the CPU
Checking to see if Heat-sink is seated properly
3: This mechanism can be disabled (for debugging purposes) by adding a REG_DWORD named TdrLevel to the registry at: HKLM\System\CurrentControlSet\Control\GraphicsDrivers and assigning it a value of '0'. Doing this will simply stop the TDR from resetting your display driver (this may simply tell your computer to allow itself to freeze instead, read on).
Another thing you can try (for debugging purposes) is adding a REG_DWORD named TdrDelay instead of the TdrLevel entry. This entry specifies the number of seconds that the TDR will wait before resetting the GPU/Driver. The default value is 2 seconds, so you can up to to 4 or 10 seconds to see if your system regains responsiveness. Don't leave it at the default value of '0' that's put in when you create the key.
Keep in mind that in most cases these registry entries will not be there and you will have to create them. NEVER mess with the registry if you don't know what you are doing.
To remove the keys (after debugging), simply use the Find function and match it to TdrLevel or TdrDelay and delete the entry.
Source: http://www.microsoft.com/whdc/device/display/wddm_timeout.mspx#E1B
See if any of these solutions help you. If they do (or don't), post your results here. This is a common enough error that building up a reasonable cache of knowledge for people with the problem will help future generations of frustrated users.
Cheers,
-Anshar
P.S. - Sometimes switching to older drivers (especially like the ones in my link above) will cause instability in Flash video in a browser (i.e. your games will work perfectly, but Flash video will crash you). All you have to do is right click a Flash video (after pausing it so it doesn't crash) and go to Settings. Uncheck Hardware Acceleration, close the options window, and close your browser / restart your computer. I had this issue and that solved it.