Deepin V20系统安装CUDA时遇到的坑

先说结论,如果后续要装CUDA,不要用Deepin的显卡驱动管理器安装驱动,应该从nvidia官网装驱动

问题

手贱点了升级系统内核,升级完发现显卡驱动也不适配了,图方便在显卡驱动管理器中点击升级,升级完成后命令行输入nvidia-smi
显示正常,驱动安装结束!开开心心装cuda,装完nvcc -V
cuda正常
耶,cuda也是正常的,安装完成!
然而在用pytorch的时候莫名其妙报了这样一个错:

UserWarning: CUDA initialization: CUDA unknown error - this may be due to an incorrectly set up environment, e.g. changing env variable CUDA_VISIBLE_DEVICES after program start. Setting the available devices to be zero. 

解决

我重装了n遍cuda、pytorch、anaconda,试了网上的n种办法都没用,包括但不限于:

export CUDA_VISIBLE_DEVICES=0,1,2,3
apt-get install nvidia-modprobe
sudo aptitude install cuda
sudo apt install nvidia-cuda-toolkit

都无济于事,最后这种还白白占了我几个G的空间。
最后索性卸了显卡驱动管理器中的驱动,自己老老实实从官网装,居然就成功了。

驱动+CUDA安装步骤

  1. 官网选自己显卡对应的驱动版本下载https://www.nvidia.cn/geforce/drivers/
  2. crtl+shift+f2进入命令行界面,并关闭图形界面:sudo service lightdm stop
  3. sudo bash xxx.run安装驱动,期间可能会各种报错,比如:ERROR: Unable to load the 'nvidia-drm' kernel module.不用管,不影响结果。nvidia-smi有这样的输出说明驱动安装成功:Deepin V20系统安装CUDA时遇到的坑_第1张图片
    注意到这里右上角有个CUDA Version,意思是11.4以下的CUDA都能装,去https://developer.nvidia.com/cuda-toolkit-archive选一个11.4以下的。
    可以先去看看tensorflow适配哪些CUDA版本https://tensorflow.google.cn/install/source_windows
    到这一步就可以sudo service lightdm start开启桌面了,不然总是心惊胆战的。
  4. sudo bash xxx.run安装cuda, 只需要装第二个toolkit就行。
    注意到第一个是Driver,我们已经装过了(试过直接装这个driver,没一次成功,所以还是先去把driver装好再说),下面的samples等完全可以不装。在option里修改安装路径到/home/用户名/cuda
  5. sudo vim ~/.bashrc,在最下面加入这几句:
#修改了安装路径
CUDA_HOME=home/用户名/cuda
export PATH=\$PATH:\$CUDA_HOME/bin/
export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:\$CUDA_HOME/lib64
  1. 最后source ~/.bashrc,再nvcc -V,成功。pytorch试一下:
import torch
print(torch.cuda.is_available())
>>>True

就装好啦!

你可能感兴趣的:(pytorch,linux,deepin)