pytorch踩坑

在Ubuntu系统中安装CUDA时遇到版本不兼容问题,尝试安装CUDA 11.3和cuDNN,过程中因系统内核、GCC版本不匹配导致驱动安装失败并引发黑屏。通过卸载NVIDIA组件,调整GCC版本到7,重新安装NVIDIA驱动470或515,并更新系统避免内核升级,最终成功安装并验证NVIDIA驱动。
摘要由CSDN通过智能技术生成

1、pytorch版本不兼容

参考链接
cuda版本对应
不晓得啥子原因,torch安装一直出问题
依照这个表格的版本,安装cuda11.3
cuda官网
cudnn官网
(这两个网址比较快~~~)

wget https://developer.download.nvidia.com/compute/cuda/11.3.0/local_installers/cuda_11.3.0_465.19.01_linux.run
# 找到目录文件,输入下面命令
sudo sh cuda_11.3.0_465.19.01_linux.run

参考链接
依据这个博主的说法,也就是我的linux系统内核不对。

# 查看当前系统的gcc版本
$ gcc --version
# 若没有安装gcc,则执行以下命令
$ apt install gcc
# 查看系统正在运行的Kernel Header
$ uname -r
# 查看显卡信息,有显卡是安装cuda的前提
lspci | grep -i nvidia

安装NVIDIA显卡驱动

# 查看你可以使用的驱动
ubuntu-drivers devices

# 卸载Nouveau 在安装前,Nouveau可能已经启动,所以无法安装Nvidia成功
#---open a terminal---
sudo apt-get remove nvidia*
sudo apt autoremove
sudo apt-get install dkms build-essential linux-headers-generic
 
sudo vim /etc/modprobe.d/blacklist.conf
#---save the following info into file blacklist.conf---
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off
#---end of the info saved----
 
#---go back to the terminal---
echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf
sudo update-initramfs -u
reboot

然后我的电脑重启,就黑屏了。。。。。。(出现图标的那种黑屏,感觉已经进入桌面了,就是不显示)
想过重装系统,奈何比较懒,再挣扎一下下。。。

参考链接
根据这个博主的操作,进入ubuntu高级选项,进入第一个recovery mode中,然后进去root,点enter,输入sudo apt-get remove --purge nvidia-*,删除nvidia组件的含义,退出root(Ctrl+D),选择resume即可。
然后,重启开机,就正常开机了。

# 查看NVIDIA版本检验是否安装完成
nvidia-smi

什么都没有。。。。。。

人傻了。。。

然后继续查找资料,还是第一个博主说的,Linux系统内核的问题。
忽略了一个最重要的问题:安装cuda和cudnn之前,需要安装显卡驱动,刚刚黑屏把显卡驱动全部删除了,所以要重新装显卡驱动。
参考链接

# 把之前的nvidia卸载干净
sudo apt-get remove --purge nvidia-*
# 
sudo apt-get update
# 查看可以选择哪些驱动
sudo ubuntu-drivers devices
# 下载的nvidia驱动版本
sudo apt install nvidia-driver-470 # cuda最高11.4
sudo apt install nvidia-driver-515 # cuda最高11.7
# 重启电脑(这一步很重要,不重启没有效果)
reboot
# 重启后,输入命令查看nvidia驱动是否安装好了,gpu是否可用
nvidia-smi

还有很重要的一点!!!!!!

sudo apt-get upgrade
# 该命令可能会导致ubuntu内核的更新。内核更新可能会导致你的nvidia驱动出现问题,不能用了。

原因:
可能是因为你的ubuntu系统如ubuntu18.04或者ubuntu20.04的gcc、g++版本过高。
装驱动需要的gcc、g++的版本需要是gcc7、或g++7。我用gcc9、g++9的装上nvidia驱动后会报错。
举个更改gcc、g++版本的例子:
因为Ubuntu20.04,或者有的ubuntu18.04自带的gcc版本为9,而nvidia驱动不支持gcc-9,因此要手动安装gcc-7,命令如下:

sudo apt-get install gcc-7 g++-7
# 安装完gcc-7,系统中就存在两个版本的gcc,因此要设置默认的gcc,命令如下:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 1
# 此命令可以通过update-alternatives设置gcc各版本的优先级,优先级最高的为系统默认版本,可以用下述命令显示其优先级:
sudo update-alternatives --display gcc
# 设置默认的g++也是如此:
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 9
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 1
# 显示g++优先级:
sudo update-alternatives --display g++

所以,不要没事乱更新。。。

总结

其实就是,没事乱更新,内核更新导致的nvidia驱动出问题了。
就是更改gcc的版本为7,因为本身自动安装的是9,按照上述指令更改优先级别,然后禁用nouveau(这个我早就禁用了),简单确认一下,然后安装nvidia驱动版本,开机重启,查看cuda版本。

# 禁止系统自带显卡驱动
lsmod | grep nouveau
# 查看你可以使用的驱动
ubuntu-drivers devices
# 查看当前系统的gcc版本
$ gcc --version
# 查看显卡信息,有显卡是安装cuda的前提
lspci | grep -i nvidia
# 下载的nvidia驱动版本
sudo apt install nvidia-driver-470 # cuda最高11.4】
# 重启电脑(这一步很重要,不重启没有效果)
reboot
# 重启后,输入命令查看nvidia驱动是否安装好了,gpu是否可用
nvidia-smi
# 查看cuda 版本
nvcc -V
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Joanna_呀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值