Skip to content

GPU drivers crash with long computations

IGCIT edited this page Jul 5, 2023 · 9 revisions

GPU drivers crash with long computations

This wiki page describes a workaround that is applicable to all GPU vendors.

Quote from Adobe Substance 3D Painter docs

Why does the GPU driver crash ?

In order to prevent any rendering or GPU computation from locking up the system, the Windows operating system kills the GPU driver whenever a rendering takes more than a few seconds. When the driver is killed, the application using it crashes automatically. It is not possible to know how long a rendering task or a computation may take (it depends on the GPU, the drivers, the OS, the mesh size, the texture size, etc.), therefore it is not possible to put a limit on how much the computer should process and avoid the crash from the application level.

On Windows there is a registry key specifying how long the OS should wait before killing the GPU driver. Application are not authorized to modify this setting directly, this procedure has to be done manually.

For more information consult the official documentation.

Here are two methods to edit TDR values.

IGCIT Helper (method 1)

Go to Tools, in TDR delay section

Change TdrDelay and TdrDdiDelay value and click Apply

(60 is a recommended value, you are free to change that to whatever you need)

Manually (method 2)

If you are using a non-admin Windows account:

Open Windows start menu

Type regedit and Run as administrator

(screenshot courtesy of Hyatice)

If you are using a standard Windows account:

Right click Windows start button

Open Run

Type regedit and click Ok


Go to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers

If it does not exist, create a new DWORD value and name it TdrDelay

If it does not exit, create a new DWORD value and name it TdrDdiDelay

Edit TdrDelay and TdrDdiDelay values, change the Base to decimal and set 60 as value (60 is a recommended value, you are free to change that to whatever you need)

This is how it should looks like now

A reboot is now required to apply the changes

FAQs

Q: How do i reset TdrDelay and TdrDdiDelay to their default?

A: You can either:

  • set TdrDelay to 2 and TdrDdiDelay to 5
  • or delete TdrDelay and TdrDdiDelay registry keys

Credits

  • Saracchini for finding this
  • Abobe for TDR crash documentation page