在CUDA错误后重置GPU和驱动程序

Rog*_*ahl 11 windows cuda gpu

有时,我的CUDA程序中的错误会导致桌面图形中断(在Windows中).通常,屏幕保持稍微可读,但是当图形改变时,例如当拖动窗口时,出现许多半随机彩色像素和小块.

我试图通过更改桌面分辨率来重置GPU和驱动程序,但这没有用.我发现的唯一解决方法是重启计算机.

是否有一个程序或我可以使用一些技巧来重置驱动程序和GPU重置?

背景:

我有1.0,1.1,1.3和2.0卡,但我现在只有1.1和2.0卡.我在1.0和1.1上看过这个问题.我很确定我在1.3上看过它.我不确定2.0.内存保护是否在1.3左右增加了一些时间?我几乎可以肯定这不是由于硬件不稳定,因为问题似乎是由我的代码中的错误引发的,并且在修复错误时消失了.运行完成的代码后,卡已稳定.我在1.1卡上看到这个问题之后写了这个问题,但是在我修复了一个bug之后它就消失了,现在我没有任何代码可以重现它.也许我应该尝试写入1.1卡上的随机位置,看看是否有任何事情......

小智 15

因为在 unix 上有时会发生同样的问题,谷歌将我转发到这个线程,我希望这对其他人有帮助..

在 ubuntu 上卸载并重新加载 nvidia 内核模块为我解决了这个问题:

sudo rmmod nvidia_uvm
sudo modprobe nvidia_uvm
Run Code Online (Sandbox Code Playgroud)

  • `nvidia-smi -r` 不起作用,因为“GPU 0 是主 GPU”。这个有效。 (5认同)

har*_*ism 9

编辑:

如果您使用的是Linux上的Tesla硬件并且可以运行nvidia-smi,那么您可以使用重置GPU

nvidia-smi -r
Run Code Online (Sandbox Code Playgroud)

要么

nvidia-smi --gpu-reset
Run Code Online (Sandbox Code Playgroud)

以下是man此开关的输出:

重置GPU状态.可用于清除双位ECC错误或恢复挂起的GPU.需要-i切换到特定设备的目标.仅适用于Linux.

除此以外...


真正重置硬件的方法是重启.

你所描述的不应该发生.我建议使用不同的硬件进行测试,如果仍然存在,请告诉我们.


Mat*_*cic 6

要在 Windows 中重置图形堆栈,请按Win+ Ctrl+ Shift+ B