本地ubuntu22.04装cuda11.7+torch2.0.1流程记录

想要更新cuda11.7,需要的驱动最低版本515.65.01,而我的电脑原驱动为470,需要更新。

1. 卸载原驱动

使用了命令:

sudo apt-get purge nvidia-*
sudo apt-get autoremove

用以下命令检查是否卸载干净:

sudo dpkg --list | grep nvidia-*

发现有ii文件残留,当时没管。

2. 安装新驱动

(1)系统自带安装(出问题)

通过设置中的软件更新-附加驱动,选择了NVIDIA-535版本点击下载,装完重启电脑,好家伙,图形界面没有了,nvidia-smi显示device no found,显然这个驱动装得有问题,我又卸。

通过那个检查命令发现,刚刚的535相关的ii文件也残留了。似乎得把它们删除干净才行。我取残留文件名的开头+*,用apt-get purge命令删了个干净:

sudo apt-get purge libnvidia*
sudo apt-get purge linux-objects-nvidia-470-5.15.0*
sudo apt-get purge linux-signatures-nvidia-5.15.0*

删完图形界面立刻出现了。

(2)cuda安装程序装驱动(成功)

既然已经没有驱动了,是不是可以用cuda安装程序安一个它以来的驱动上去呢?

结果接连报了许多错,根据提示到/var/log/nvidia-installer.log中查看报错信息。

(a)报错: 正在使用显卡

“An NVIDIA kernel module ‘nvidia-drm‘ appears to already be loaded in your kernel...”

参考这位博主的博客,停止使用GPU显示:An NVIDIA kernel module ‘nvidia-drm‘ appears to already be loaded in your kernel..._nvidia-drm appears_子燕若水的博客-CSDN博客

——也许是我的图形界面恢复,正占用着显卡的锅。

具体地:

sudo -i
systemctl isolate multi-user.target
modprobe -r nvidia-drm
logout

执行完第二行,我显示屏上的图形界面被关闭了;执行第三行报了个缺失。我没管,继续跑cuda的安装程序。

(b)报错:没有kernel source tree

"ERROR: Unable to find the kernel source tree for the currently running kernel..."

参考博客:Ubuntu18.04 + RTX 2080 Ti 安装NVIDIA显卡驱动的一些坑_ubuntu安装显卡驱动提示unable to find the_qian99的博客-CSDN博客

sudo apt-get install linux-headers-`uname -r` 

用这一行命令解决了问题,继续跑cuda安装程序。

(c)报错:gcc版本不符合

Warning: Compiler version check failed:

The major and minor number of the compiler used to
compile the kernel:

x86_64-linux-gnu-gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0, GNU ld (GNU Binutils for Ubuntu) 2.38

does not match the compiler used here:

cc (Ubuntu 9.5.0-6ubuntu2) 9.5.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


It is recommended to set the CC environment variable
to the compiler that was used to compile the kernel.

因此需要更新gcc到需要的版本:

sudo apt install gcc-11
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 40
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 50

然后就不再报错,成功安装了cuda11.7与驱动515.65.01。

3. 配置系统环境,切换cuda

查看软链接:

stat /usr/local/cuda

已链接到新的cuda11.7,但再用nvcc -V显示的是原有的cuda11.3,说明要修改要实现多cuda切换需要改我原本的系统路径:

vim ~/.bashrc

将原本的CUDA_HOME=/usr/local/cuda-11.3改为了cuda 

 然后更新配置:

source ~/.bashrc

再用nvcc -V检查,妥了。 

4.下载cudnn

 在官网:cuDNN Archive | NVIDIA Developer​​​​​​

下载了目前最新的用于cuda11.x的cudnn

 解压tar.xz文件并复制对应文件到cuda下:

tar -xf cudnn-linux-x86_64-8.9.2.26_cuda11-archive.tar.xz
sudo cp cudnn-linux-x86_64-8.9.2.26_cuda11-archive/include/cudnn.h /usr/local/cuda-11.7/include
sudo cp cudnn-linux-x86_64-8.9.2.26_cuda11-archive/lib/libcudnn* /usr/local/cuda-11.7/lib64
sudo chmod a+r /usr/local/cuda-11.7/include/cudnn.h /usr/local/cuda-11.7/lib64/libcudnn*

5. 安装pytorch

在官网选择版本:Start Locally | PyTorch

我用conda命令装完不知道为什么得到的是pytorch1.12.1?用pip命令安装不出错。

检查torch是否安装好:

import torch
print(torch.__version__)
print(torch.cuda.is_available())

版本对、cuda可用即可。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值