目录

0. 前言

1. nvidia驱动安装及卸载

1.1 安装

1.2 卸载

2. cuda-10.2安装验证及卸载

2.1 安装

2.2 验证

2.3 卸载

3. cudnn安装及验证

3.1 安装

3.2 验证

4. miniconda安装验证及卸载

4.1 安装

4.2 验证

4.3 卸载

5. pytorch安装验证及卸载相关

5.1 安装

5.2 验证

5.3 卸载

6. 其他问题

6.1 import torch失败

6.2 torch.cuda.is_available()返回值为false


0. 前言

我也不知道有没有装好,稍微记录一下安装步骤。提前说一下踩坑经历:

①一开始看别人的教程装了cuda11.4,后来担心太新了有问题,就卸载了cuda11.4并重装了cuda10.2;

②miniconda3安装的时候看别人的教程,误打误撞把miniconda3装到了管理员环境下(sudo su),千辛万苦卸载之后重新安装到普通环境里;

③cudnn安装顺利,没涉及到卸载;

④pytorch安装官网的命令有几个依赖怎么都装不上(应该是我没有梯子的缘故),没办法去清华镜像下载tar包;

⑤安装后import torch报错,后来按某篇博客的说法卸载pytorch重装之后又好了,最后import成功,但是torch.cuda.is_available()是false,发现是驱动和ubuntu内核不匹配,然后重装了nvidia的驱动。

总结一下:

  1. nvidia驱动版本470.103.01
  2. cuda版本10.2
  3. cudnn版本7.6.5
  4. pytorch版本1.10.1
  5. miniconda版本py37_4.8.3(应该是支持创建3.7及之前的所有python环境)

这里面最重要的是nvidia驱动,流程应该是先确定内核支持的nvidia驱动,再确定驱动支持的cuda版本,再根据cuda版本确定cudnn,再由cuda、cudnn、python版本共同确定pytorch,miniconda只要支持py3即可。

我安装的顺序导致我绕了很多弯路,本来想让读者也走走这些弯路,毕竟能够增加理解,但是考虑到大家时间宝贵,还是提前说明正确的方法。

驱动和cuda的匹配关系参见

https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.htmlhttps://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html截取其中2个表格如下

1. nvidia驱动安装及卸载

1.1 安装

在命令行输入ubuntu-drivers devices,选择一个适合版本,我选的是470

输入sudo apt install nvidia-driver-470安装nvidia驱动

1.2 卸载

输入sudo apt-get purge nvidia*卸载nvidia驱动

2. cuda-10.2安装验证及卸载

2.1 安装

CUDA Toolkit Archive | NVIDIA Developerhttps://developer.nvidia.cn/cuda-toolkit-archive

我选择的是10.2这个版本

安装命令如下

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pin
sudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda-repo-ubuntu1804-10-2-local-10.2.89-440.33.01_1.0-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1804-10-2-local-10.2.89-440.33.01_1.0-1_amd64.deb
sudo apt-key add /var/cuda-repo-10-2-local-10.2.89-440.33.01/7fa2af80.pub
sudo apt-get update
sudo apt-get -y install cuda

2.2 验证

终端输入,有如下显示说明cuda安装成功

nvcc -V

2.3 卸载

最后一行,查看针对linux的安装指导。进去后ctrl+f搜索uninstalll,第一个就是

同样是最后一行(因为我用的是deb的安装方式),这里以卸载cuda10.2为例

sudo apt-get --purge remove cuda-10.2

使用上述nvcc -V方法验证cuda是否卸载成功,如果仍有相关显示则输入

sudo apt autoremove

最后再验证一遍

3. cudnn安装及验证

3.1 安装

cudnn需要匹配cuda的版本

cuDNN Archive | NVIDIA Developerhttps://developer.nvidia.com/rdp/cudnn-archive

我选择的是7.6.5版本,需要下载三个文件:

cuDNN Runtime Library for Ubuntu18.04 (Deb)

cuDNN Developer Library for Ubuntu18.04 (Deb)

cuDNN Code Samples and User Guide for Ubuntu18.04 (Deb)

下载完成后进入下载所在目录,再进入终端,输入如下3条命令安装上述3个文件

sudo dpkg -i libcudnn7_7.6.5.32-1+cuda10.2_amd64.deb
sudo dpkg -i libcudnn7-dev_7.6.5.32-1+cuda10.2_amd64.deb
sudo dpkg -i libcudnn7-doc_7.6.5.32-1+cuda10.2_amd64.deb

3.2 验证

cd /usr/src/
ls

可以看见有一个cudnn_samples_v7的文件夹

再依次输入

cd cudnn_samples_v7/mnistCUDNN
sudo make clean
sudo make
sudo ./mnistCUDNN

可以看到测试程序正在运行

最后结果如下

查看cudnn版本

dpkg -l | grep cudnn

4. miniconda安装验证及卸载

4.1 安装

Index of /anaconda/miniconda/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirrorhttps://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/?C=M&O=A我找的版本是Miniconda3-py37_4.8.3-Linux-x86_64.sh

下载完成后,在Downloads文件夹里进入终端,输入

bash Miniconda3-py37_4.8.3-Linux-x86_64.sh

中间问你是否选择是否接受什么的都选择yes,这里需要留意默认的安装路径以备日后卸载

安装完成后关闭终端,重新打开

输入如下命令让conda接管默认python

conda config --set auto_activate_base true

4.2 验证

安装完毕后重启终端,可以看到用户名@计算机名前出现了(base)

4.3 卸载

由于一开始我看了他的教程,用的./来运行安装程序,显示没权限,sudo也没用

ubuntu下miniconda安装_alex1801的博客-CSDN博客_ubuntu安装minicondahttps://blog.csdn.net/weixin_34910922/article/details/118161554我就直接sudo su进入root了,然后把miniconda装到root里了,root里的默认安装路径又和一般的不一样,导致我花了很多时间找安装路径

这里说下通用的卸载方法

默认安装路径是/home/用户名/miniconda3

首先用rm -rf /home/用户名/miniconda3/删除该文件夹里的所有文件,再输入

vim .bashrc

一般是在最末尾,注释掉环境变量(这里是我误装在root下的miniconda的注释环境变量的示意,root下的.bashrc和普通环境下的.bashrc里面的内容是不一样的)

保存后使用source .bashrc重新激活环境变量文件,重启终端后验证是否存在base

(误装在root里的需要进root看base是否还在)

5. pytorch安装验证及卸载相关

5.1 安装

还是去清华源Index of /anaconda/cloud/pytorch/linux-64/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirrorhttps://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/linux-64/这里我选择的是pytorch-1.10.1-py3.6_cuda10.2_cudnn7.6.5_0.tar.bz2

一般来说miniconda装完之后,要新建一个python环境,然后把pytorch装在指定的环境里,这里我从简了(我是把pytorch装在base里,然后新建了一个python3.6的环境,不建议大家采用)

上述文件下载完之后,进入Downloads目录打开终端输入

conda install pytorch-1.10.1-py3.6_cuda10.2_cudnn7.6.5_0.tar.bz2

5.2 验证

安装完成后终端输入python后再依次输入,如果能import成功,并且torch.cuda.is_available()的返回值是true说明pytorch安装成功

import torch
torch.cuda.is_available()

5.3 卸载

卸载pytorch(我也不知道下面哪个指令是对的,我是在history里看的历史指令)

conda uninstall pytorch
conda remove pytorch

6. 其他问题

6.1 import torch失败

我在第一步import torch时出现了报错信息如下

OSError: libmkl_intel_lp64.so: cannot open shared object file: No such file or directory
这时需要先卸载pytorch,再重新用

conda install pytorch-1.10.1-py3.6_cuda10.2_cudnn7.6.5_0.tar.bz2

命令安装,就可以成功import torch了

6.2 torch.cuda.is_available()返回值为false

这里我的情况比较特殊,首先在终端输入nvidia-smi无法正常显示,出现如下报错信息

NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running

但是终端输入nvcc -V显示cuda安装成功,cudnn验证时说找不到设备,也进一步说明nvidia驱动有问题。

针对这个报错信息,网上很多博客都是用的下面这个方法

NVIDIA驱动失效简单解决方案:NVIDIA-SMI has failed because it couldn‘t communicate with the NVIDIA driver._AI 菌的博客-CSDN博客前言: 以下方法,不需要重装驱动,简单快捷。适用于Ubuntu系统下,之前已经安装过驱动,但驱动失效的问题。如果此方法仍然无法解决问题,可参考Ubuntu下安装nvidia显卡驱动,重装驱动。前段时间刚装了驱动:Ubuntu下安装nvidia显卡驱动但是最近准备用GPU跑模型时,提示cuda 不存在。前段时间刚装的驱动,怎么会不存在呢?第一步,打开终端,先用nvidia-smi查看一下,发现如下报错:NVIDIA-SMI has failed because it couldn't com.https://blog.csdn.net/wjinjie/article/details/108997692但是在我这并不奏效,查阅资料后发现大概率是ubuntu内核版本和nvidia驱动版本不匹配,需要重装驱动。

用第一节的方法卸载后重装新的驱动。在终端用nvidia-smi验证nvidia驱动是否安装成功,再进入python重新查看torch.cuda.is_available()的返回值,发现为true,大功告成。

7. 后续

我在安装miniconda之前安装了py3.7,并且将py3.7设置为默认python版本。当我在miniconda py3.6的环境里想要安装一个包的时候,首先用conda install失败,用pip install会安装到py3.7而非当前虚拟环境,于是卸载conda,卸载py3.7。但是py3.7一卸载系统就出问题了,重启后进不了图形界面。重装了desk后,系统又给我自动安装了py3.7。

ubuntu系统只会携带py2.7用于系统用途,多出来的py3.7一旦卸载就会失去图形界面,一旦安装图形界面就会安装py3.7。无奈只能重装系统。

重装系统后,我按照本篇博客所说的,先装nvidia驱动,再装cuda,结果失败了:首先安装nvidia 470的驱动,接着安装cuda的时候会自动安装440的驱动,覆盖了我之前的驱动。卸载440驱动,再装470驱动又会导致nvidia-smi和nvcc -V报错。

找了一圈,要下载.sh版的cuda,在安装的时候不选择安装驱动(.deb版的cuda会自动安装驱动无法选择)。至此cuda安装完毕,nvcc -V显示正常。但是nvidia-smi和nvcc -V中的cuda版本却不一致2,nvidia-smi中的cuda版本是11.4,nvcc -V中的cuda版本是10.2。卸载cuda11.4却提示没有安装过cuda11.4,猜测这里的cuda11.4可能是驱动470内置的,看网上有人说是正常的我就没管了。

思考:重装系统前,nvidia-smi和nvcc -V中的cuda版本是一致的。复盘之前的安装流程,我先装了470的驱动,此时输入nvidia-smi发现cuda版本是11.4,于是去官网下载了cuda11.4.deb,安装完成后发现版本太高,于是卸载了cuda11.4,安装了cuda10.2,此时cuda10.2.deb内置的驱动440也自动替换了我原先的驱动470。后来因为内核版本不支持驱动440,导致torch.cuda.is_available()返回值为false,然后卸载了驱动440,重新安装了驱动470。最后使得nvidia-smi和nvcc -V中的cuda版本一致。两次安装cuda的区别可能就在于我第一次安装时先安装了cuda11.4,卸载的时候将驱动470内置的cuda11.4也卸载掉了

安装完nvidia驱动和cuda后,我又安装了cudnn和miniconda,然后在miniconda中新建了一个py3.6的虚拟环境,切换到虚拟环境中安装pytorch,按照我这篇博客的流程,我安装pytorch又失败了,试了网上的所有方法都没用。无奈只能conda install pytorch安装默认版本,在此之前我将conda的下载链接替换为了清华镜像。

pytorch安装的过程中,我看见他给我安装了一个cudatoolkit10.1,心想着我已经安装了cuda10.2了,这两者会不会冲突。最后安装完毕,试了下目前为止一切正常。

ubuntu18.04安装pytorch、cuda、cudnn和miniconda相关推荐

  1. 真实机下 ubuntu 18.04 安装GPU +CUDA+cuDNN 以及其版本选择(亲测非常实用)【转】...

    本文转载自:https://blog.csdn.net/u010801439/article/details/80483036 ubuntu 18.04 安装GPU +CUDA+cuDNN : 目前, ...

  2. 笔记本显卡1660Ti,Ubuntu18.04安装Cuda、Cudnn、Anaconda、PyTorch、Tensorflow和Keras

    /**********************************************************************/ 注:写到最后不能放图片了,安装PyTorch.Tens ...

  3. Ubuntu18.04+RTX 2080Ti+CUDA 10.0 +cuDNN+PyTorch搭建深度学习环境

    SSH无密码登陆 安装SSH Server Ubuntu 默认已安装了 SSH client,此外还需要安装 SSH server: sudo apt-get install openssh-serv ...

  4. cuda cudnn tensorflow对应_Ubuntu18.04下安装Tensorflow+cuda+cudnn+pytorch

    大体思路按照下面的链接完成 Ubuntu18.04安装TensorFlow-gpu2.0_dl_None-CSDN博客_ubuntu安装tensorflow2.0​blog.csdn.net 记录几点 ...

  5. ubuntu18.04安装显卡驱动,Anaconda,CUDA,pytorch全套流程

    记录一次成功的装显卡,以为过程很复杂,其实这边封装的还挺好,正常走流程就没啥问题.我这边也是看各个步骤的博客总结,可以称之为搬运工. 1. 显卡驱动安装 参考的是这篇博客:Ubuntu18.04安装显 ...

  6. Ubuntu18.04安装驱动、cuda、cudnn(亲测有效)

    1.Ubuntu18.04安装显卡驱动 禁用SecureBoot(按照主板型号,查询开机进入bios按键,关闭secureboot) 禁用nouveau sudo gedit /etc/modprob ...

  7. Ubuntu18.04安装CUDA、cudnn、pycharm、tensorflow-gpu

    前言 虚拟机里的linux系统似乎不能安装nvidia显卡驱动,在虚拟机Ubuntu系统上跑tensorflow只能使用cpu..看来还得去物理机装双系统或者用服务器了 因为,安装nvidia驱动报错 ...

  8. Ubuntu18.04安装cuDNN和Tensorflow的正确姿势

    文章目录 Ubuntu18.04安装cuDNN和Tensorflow的正确姿势 一.检查NVIDIA驱动是否安装成功 二.检查CUDA是否安装成功 三.安装cuDNN 1. 确定版本 2. 下载安装包 ...

  9. Ubuntu18.04安装CUDA10.1和cuDNN v7.6.5

    Ubuntu18.04安装CUDA10.1和cuDNN v7.6.5 前言 深度学习需要使用使用GPU加速,在安装tensorflow之前需要根据选用的版本安装 就我的经验而言,CUDA的安装在Lin ...

最新文章

  1. Dreamweaver 8的后台文件传输
  2. 数字IC设计各种仿真波形文件
  3. python怎么安装包-Python-如何离线安装软件包?
  4. SynchronousQueue队列
  5. 2016.2.17文件夹选择框及文件选择框
  6. 使用ConfigModule.withConfig替换SAP Spartacus标准Component
  7. springboot springcloud区别_SpringCloud微服务全家桶-第一篇!为什么要用微服务
  8. python xlwt xlrd 写入一行_自己总结python用xlrd\xlwt读写excel
  9. oracle oid 10G
  10. syslog收到的日志存放在哪里_【Python】Syslog日志服务器开发amp;部署(12.5更新)
  11. windows 端口占用
  12. Linux中MySQL没有schema_linux服务器安装Mysql后,只能看到information_schema/test这两个库,无法修改密码...
  13. ispostback之坑
  14. 弯管机编程软件电脑版_编程一点通电脑版
  15. 计算机电源不能启动不了,电脑不开机,常见原因有哪些,怎么处理,黑屏怎么办...
  16. 传统目标检测方法研究(一)
  17. 【遗传编程/基因规划】Genetic Programming
  18. 考研计算机报录比最高的手机,考研 | 报录比最高专业TOP10,就离谱!
  19. vmware中window如何分配独立ip
  20. PLSQL 的中文乱码解决方法(简单实用)

热门文章

  1. 解决升级完pip后无法使用pip的问题
  2. 如何用excel做正交分析_如何在SPSS中进行正交设计及正交分析?
  3. chrome java过期_解决ubuntu的chrome浏览器的flash过期问题
  4. Matlab代码模板,图像处理,色彩补偿,色彩平衡,显示连通分量数量
  5. 任务描述本关任务:利用所学知识,按要求自行绘制一个 K 线图。
  6. C# 使用Interop.Excel一些报错的对应
  7. word.interop
  8. Unity3D说明文档翻译-Preferences
  9. 从0开始学习python7:Python中词频统计以及sort的排序用法
  10. easyui的简单实例