当前位置: 首页 > news >正文

Ubuntu20.04下安装多CUDA版本,以及后续切换卸载

本方案的前提是假设机子上已经有一个版本的cuda,现在需要支持新的torch2.1.2和torchvision==0.16.2,于是来安装新的cuda

一、选择版本

如果我想安装支持torch2.1.2的cuda版本,到官网(https://pytorch.org/get-started/previous-versions/#v200)查看版本对应,发现11.8或者12.1可以支持torch2.1.2和torchvision==0.16.2

image-20241014094057455

nvidia-smi

查看自己的电脑能支持什么版本,根据结果我们的设备最高只能运行12.0版本,达不到12.1,所以选择安装11.8

image-20241014094807690

二、安装CUDA

到官网找到11.8:https://developer.nvidia.com/cuda-toolkit-archive,根据指引进行安装,即运行以下命令

wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
sudo sh cuda_11.8.0_520.61.05_linux.run

image-20241014094322833

运行run之后,取消选中Driver,其他默认,然后Install

【注意如果这里没有Driver,可以参考其他博客先安装好Nvidia显卡驱动】

image-20241014095739610

三、安装Cudnn

进入官网:https://developer.nvidia.com/rdp/cudnn-archive,我要安装CUDA11.8,所以选择for CUDA 11.x下的内容

image-20241014095418748

下载完成后,运行以下命令来解压和配置

# 解压
tar -vxf ./cudnn-linux-x86_64-8.9.7.29_cuda11-archive.tar.xz
# 复制
sudo cp cudnn-linux-x86_64-8.9.7.29_cuda11-archive/include/* /usr/local/cuda-11.8/include
sudo cp cudnn-linux-x86_64-8.9.7.29_cuda11-archive/lib/libcudnn* /usr/local/cuda-11.8/lib64
# 添加读写权限
sudo chmod a+r /usr/local/cuda-11.8/include/cudnn.h
sudo chmod a+r /usr/local/cuda-11.8/lib64/libcudnn*
cat /usr/local/cuda-11.8/include/cudnn_version.h | grep CUDNN_MAJOR -A 2  # 测试安装是否正常

最后如下图显示则说明安装成功

image-20241014101132577

四、环境配置

最后运行官网中一开始的命令来完成安装(没有环境的先用前两行代码创建一个)

# conda create -n torch21 python=3.10 -y
# conda activate torch
conda install pytorch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 pytorch-cuda=11.8 -c pytorch -c nvidia

五、其他操作(切换/卸载CUDA版本)

(1)切换cuda版本

安装的时候我们电脑下可能已经有默认的cuda版本,安装新版本是是会支持覆盖的

image-20241014095827334

另外也可以通过以下命令切换

sudo rm -rf /usr/local/cuda    #删除之前创建的软链接
sudo ln -s /usr/local/cuda-11.8 /usr/local/cuda    #创建链接到cuda-11.0的软链接
nvcc -V    #查看当前cuda版本

(2)卸载CUDA

如果想卸载CUDA,进入对应路径,运行以下命令后选中相应的(以卸载CUDA12.0为例),然后Done

cd /usr/local/cuda-12.0/bin
sudo ./cuda-uninstaller

image-20241014155430601

参考链接:

ubuntu配置多版本cuda+cudnn环境,及版本切换方法

http://www.lryc.cn/news/462585.html

相关文章:

  • 图像处理高频面试题及答案
  • 尤雨溪都打赏的虚拟列表组件,到底有多强
  • FrameWork使用EfCore数据库映射举例
  • 汽车与航空领域的功能安全对比:ISO 26262-6 与 DO-178C 的差异浅析
  • linux命令之lspci用法
  • 虚幻闪烁灯光材质
  • UNION ALL函数用法
  • JavaWeb合集14-WebSocket
  • Vue快速嵌入百度地图,避坑提效指南
  • 深入理解售后派单管理系统,功能优势一览
  • 一文读懂K8S的PV和PVC以及实践攻略
  • 在react-native中如何获取View的漏出比例和漏出时间
  • 谷歌新安装包文件形式 .aab 在UE4中的打包原理
  • 昂首平台:多货币专家顾问助力投资者优化外汇投资
  • Go标准库runtime.MemStats
  • MAC 电脑Office power point编辑的时候,显示“某些字体无法随演示文稿一起保存,仍然要保存演示文稿吗?”
  • R语言机器学习算法实战系列(四)随机森林算法+SHAP值 (Random Forest)
  • 用柔性神经k-Opt学习搜索路径问题的可行和不可行区域(未完,先看前驱文章L2S)
  • 【升华】人工智能python重要库scikit-learn学习
  • Stable Diffusion Web UI 大白话术语解释 (二)
  • vue-vben-admin 首页加载慢优化 升级vite2到vite3
  • 集合框架07:LinkedList使用
  • 一区鱼鹰优化算法+深度学习+注意力机制!OOA-TCN-LSTM-Attention多变量时间序列预测
  • Cesium 黑夜效果
  • leetcode动态规划(二)-斐波那契数列
  • 【MySQL】增删改查-进阶(一)
  • MacOS RocketMQ安装
  • OpenCV高级图形用户界面(6)获取指定窗口中图像的矩形区域函数getWindowImageRect()的使用
  • SpringColoud GateWay 核心组件
  • 5.计算机网络_抓包工具wireshark