Os drivers da GPU falham com cálculos longos (falha de TDR)
No Windows, essa janela será exibida se o Substance 3D Painter detectar que o valor TDR atual está abaixo de um limite específico (10 segundos).
Por que o driver da GPU trava?
Para impedir que qualquer renderização ou computação de GPU bloqueie o sistema, o sistema operacional Windows elimina o driver de GPU sempre que uma renderização levar mais do que alguns segundos. Quando o driver é eliminado, o aplicativo que o utiliza trava automaticamente. Não é possível saber quanto tempo uma tarefa de renderização ou um cálculo pode levar (depende da GPU, dos drivers, do sistema operacional, do tamanho da malha, do tamanho da textura etc.), portanto, não é possível colocar um limite em quanto o computador deve processar e evitar a falha no nível do aplicativo.
No Windows, há uma chave do Registro que especifica quanto tempo o sistema operacional deve esperar antes de eliminar o driver de GPU. Os aplicativos não estão autorizados a modificar essa configuração diretamente, esse procedimento deve ser feito manualmente (veja abaixo).
Para obter mais informações, consulte a documentação oficial: https://docs.microsoft.com/en-us/windows-hardware/drivers/display/tdr-registry-keys.
Lista de teclas que precisam ser alteradas
Para ajustar o TDR, basta aumentar o Atraso do TDR: altere TdrDelay e TdrDdiDelay para um valor mais alto (como 60 segundos).
Como editar os valores TDR
Siga este procedimento para alterar o valor do TDR.
Observe que duas chaves diferentes deverão ser criadas/editadas.
1 - Abra a janela Executar
Clique em Iniciar e em Executar (ou pressione a tecla Windows e R). Isso abrirá a janela Executar.
2 - Inicie o Editor de registro
Digite regedit no campo de texto e pressione OK.
3 - Navegue até a chave de registro GraphicsDrivers
A janela do registro será aberta.
No painel esquerdo, navegue na árvore até a tecla GraphicsDrivers acessando:
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers
Certifique-se de permanecer em “GraphicsDrivers” e não clicar nas chaves do Registro abaixo antes de seguir para as próximas etapas.
4 - Adicionar ou editar o valor TdrDelay
No painel direito, clique duas vezes no valor TdrDelay. Altere a configuração Base para Decimal. Defina o valor para algo diferente do 2 padrão (recomendamos 60).
Esse valor indica em segundos quanto tempo o sistema operacional aguardará antes de considerar que a GPU não responde durante um cálculo.
Valor DWORD de ‘TdrDelay’ ![ no Editor de Registro do Windows Valor DWORD de ‘TdrDelay’ no Editor de Registro do Windows "){zoomable=“yes”}] (…/…/…/assets/tdrdelay-edit.png "
5 - Adicionar ou editar o valor TdrDdiDelay
No painel direito, clique duas vezes no valor TdrDdiDelay . Altere a configuração Base para Decimal. Defina o valor para algo diferente do 5 padrão (recomendamos 60 ).
Esse valor indica em segundos quanto tempo o sistema operacional aguardará antes de considerar que um software levou muito tempo para deixar os drivers de GPU.
Hexadecimal é o valor padrão. Basta alternar para decimal para exibir o valor correto. Observe que 3C (Hexadecimal) é igual a 60 (Decimal).
6 - Concluir e reiniciar
O painel direito agora deve ter esta aparência:
Feche o Editor do Registro. Reinicie o computador usando Iniciar e Reiniciar.
O TdrValue é examinado somente quando o computador é iniciado, portanto, para forçar uma atualização, é necessário reinicializar.
Se o aplicativo ainda travar ao fazer um cálculo longo, tente aumentar o atraso (em segundos) de 60 para 120, por exemplo.
Reverter valores TDR para padrões
Há duas maneiras de reverter o TDR para seus valores padrão:
- Defina o TdrDelay como 2s e o TdrDdiDelay como 5s, seguindo as etapas descritas acima.
- Ou Remova as chaves TdrDelay e TdrDdiDelay da entrada do Registro.