The issue is not with the driver per-se, but with Windows.
The operating system has a builtin timer for when the graphics card is busy. If the graphics card doesn't respond for more than a certain period it activates a count down. When exceeded it terminates the graphics drivers process to regain system responsiveness.
As Julian Herzog writes
The problem here is that Windows has a timeout detection and recovery
(TDR) system that detects if a GPU computation takes longer than a
given amount of time, the default value for that being two seconds,
and then “reinitializes” the Windows Display Driver Model (WDDM)
driver and resets the GPU. This will stop the rendering process. You
will also notice that any displays attached to the GPU you use for
rendering will turn black for a short moment.
Normally, this system is great because it prevents permanent screen
freezes for malfunctioning drivers or games. But in Cycles, one sample
is considered one computation, which means that if your sample
calculation takes longer than two seconds, Cycles (and the Blender UI,
if you render with UI) will crash.
To prevent this you must change a key in Windows registry
- Open the registry editor (REGEDIT)
- Got to
- Set the
- If it contains a kyword named
TdrDelay edit its value
- If there is no
TdrDelay right-click into the empty space below the
- Create a new “DWORD-Value". A
DWORD (32-bit) -Values hould cut it
- Set its name it “TdrDelay”
- Change the value to 8 or 16 (value is interpreted in seconds)
- Beware of the editing mode, make sure you save as decimal value, not hexadecimal (I found only 512 was enough to prevent most crashes).
- Reboot your system for the changes to take effect.