之前已经在正常使用过并能正常使用GPU,换了一个任务就提示无法计算。
错误信息如下:
RuntimeError: cuda runtime error (38) : no CUDA-capable device is detected at /pytorch/aten/src/THC/THCGeneral.cpp:74
运行这两条命令也都正常可执行
$ sudo nvidia-smi $ sudo nvidia-settings
于是寻找合适的驱动:
$ ubuntu-drivers devices == /sys/devices/pci0000:00/0000:00:02.0/0000:03:00.0 == model : GM204GL [Quadro M4000] vendor : NVIDIA Corporation modalias : pci:v0000000000000000 driver : nvidia-384 - distro non-free recommended driver : xserver-xorg-video-nouveau - distro free builtin
如上图,显示GM204GL [Quadro M4000]显卡建议的驱动版本是384,那就安装nvidia driver吧:
$ sudo apt-get install nvidia-384 nvidia-384 已经是最新版 (384.130-0ubuntu0.16.04.1)。
提示已经安装了
后来发现是运行的脚本中设置了CUDA_VISIBLE_DEVICES="3"。
可以通过该命令可以看到需要使用编号为3的显卡,关于显卡编号一般是从0开始变好的,第一块编号为0,第二块编号为1。虽然指定使用第二块显卡,不过我的计算机上面只有一块显卡,所以这样会提示上面的报错信息。
将显卡指定行改为如下:
CUDA_VISIBLE_DEVICES="0"
改完可以正常运行了!


