Ubuntu 20.04安装CUDA CUDNN 手把手带你撸
新手先看这
之前一直使用CPU做训练,最近手上多了台单卡1080Ti显卡主机,于是开始研究GPU训练。用GPU训练一定会使用CUDA了,刚开始接触CUDA非常非常头痛,对小白很不友好,我几乎整了整整一天,中途想放弃过很多次,最后终于弄好了,回头看看其实不是很难,但是网上文章又多又杂,确实让我来回鼓捣了很久,于是写下这篇文章,希望对新入门GPU机去学习,想安装CUDA的朋友们一点帮助,少走弯路,不要像我一样浪费好多时间。
新手最难理解的就是CUDA和cuDNN是啥了,以及安装过程,步骤。 这里先简单说一下,先检查机器/usr/local目录下有没有cuda或cuda-xx.xx文件夹,如果没有,那99.99%说明该机器没有安装CUDA。不要相信nvidia-smi或nvcc --version指令看到的CUDA版本号,那都没意义。
如果说CUDA是GPU深度学习的运行库,那么cuDNN就是训练加速工具,两者要相互配合使用,所以一般机器学习需要训练引擎(tensorflow-gpu) + CUDA + cuDNN使用。想不安装cuDNN是不可以的,而且cuDNN版本要和CUDA版本相互搭配。具体搭配方式见下面博文。
检查是否安装显卡驱动
查看是否安装NVIDIA显卡
lspci | grep -i nvidia
查看显卡信息
nvidia-smi
如果出现这个样式,说明已经安装显卡驱动了。通常装好的Ubuntu中都有显卡驱动。我是在阿里云上租借GPU云主机A100时候遇到了没有显卡驱动。如果没有驱动,那么就需要手动安装显卡驱动了。
先添加源:
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
检查可安装的驱动:
ubuntu-drivers devices
找到最适合的驱动安装,安装recommended标记的,通常也是数字版本最大的那个。
sudo apt install nvidia-driver-XXX
也可以自动安装系统推荐那个
sudo ubuntu-drivers autoinstall
如果没有遇到报错,说明安装成功,此时调用nvidia-smi指令可能还是看不到显卡信息,不要担心,重启系统之后就能看到了。
安装CUDA
我第一次接触CUDA的时候,以为nvidia-smi指令看到的那个CUDA Version有值就是安装了CUDA的意思。但是后来才知道这里的CUDA是说此显卡最大支持的CUDA版本号。因此我们仍然需要手动从官网下载CUDA,且版本号不能高于这个。安装CUDA就不细说了,除了刚刚提到的细节外,几乎坑不多,这里把有坑的地方简单介绍一下。
首先Ubuntu 20.04默认g++9版本太高,会导致CUDA无法安装,因此要先降低g++版本。
sudo apt-get install gcc-7 g++-7sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 1sudo update-alternatives --display gccsudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 9
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 1sudo update-alternatives --display g++
然后从官网下载对应的CUDA,这里对新人最不友好的就是什么是“对应的CUDA”???除了我刚刚提到的GPU支持最大CUDA版本外,还需要考虑Tensorflow对应的CUDA版本,从这里可以查到:
https://www.tensorflow.org/install/source_windows
例如阿里云GPU主机常用的就是CUDA11 + cuDNN8,那么就要搭配tf-gpu 2.4.0版本使用。如果你不清楚你对应的CUDA是啥,我推荐你使用CUDA10.1 + cuDNN7.6 + tensorflow-gpu 2.2.0这个组合。
知道要安装的CUDA版本后,就很简单了,去NVIDIA官网直接下载对应版本就好了。
https://developer.nvidia.com/cuda-toolkit-archive
有20.04的就用20.04的,没有就选最大的,一般是18.04。推荐用runfile安装,两句话很简单:
wget https://developer.download.nvidia.com/compute/cuda/11.1.1/local_installers/cuda_11.1.1_455.32.00_linux.run
sudo sh cuda_11.1.1_455.32.00_linux.run
第一句话是下载cuda_xxxx_linux.run脚本,第二句是执行脚本。在弹出的安装界面中选“continue”,如果选了会跳出安装,就说明安装失败,给了失败日志的路径,自己查看原因,一般是gcc版本问题,上面提到过降级方法,不赘述。
在这一步输入accept
然后选择安装项,一般情况我们都安装了显卡驱动,所以这里第一项驱动最好不勾选,其他默认安装。
成功后需要配置一下环境变量,这步很关键。一开始我忽略了这步,一直以为CUDA安装好了,但是TF运行的时候怎么都找不到GPU。
sudo vim ~/.bashrc
最后一行增加
$ export PATH=/usr/local/cuda-10.1/bin${PATH:+:${PATH}}
$ export LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib64\${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
特别注意文件夹路径,有时候文件夹直接是/usr/local/cuda,有时候是别的版本号,要确保文件夹存在。
source ~/.bashrc
最后更新环境变量。
检查一下CUDA是否安装正确:(注意文件夹路径一定要存在,需要跟上面设置环境变量的路径保持一致)
cat /usr/local/cuda/version.txt
这里特别注意:
一开始的时候,我对CUDA不是很了解,执行这句话没有任何反应,我以为是该方法失效了。我使用nvidia-smi或nvcc --version指令都看到了CUDA版本号。但是CUDA环境没有配置好,这两个也是能拿到版本号的,所以不准确。还是应该用上面的方法检查CUDA版本。
安装cuDNN
cuDNN比CUDA安装简单,下载对应版本压缩包,拷贝文件到指定目录,给予权限就好了。
官网下载地址:(需要注册)
https://developer.nvidia.com/cudnn
特别注意拷贝的路径一定是上面指定的环境变量路径!
sudo cp cuda/include/cudnn.h /usr/local/cuda-10.1/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-10.1/lib64
sudo chmod a+r /usr/local/cuda-10.1/include/cudnn.h
sudo chmod a+r /usr/local/cuda-10.1/lib64/libcudnn*
查看cuDNN版本方法:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
注意,这句话可能执行了没效果,那是因为新版本换位置了,需要用:
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
这里再次注意路径问题。
至此CUDN + cuDNN安装完成,可以执行相关训练文件查看是否有gpu信息输出,或监控一下gpu状态
watch -n 1 nvidia-smi
如果还是使用的CPU训练,就需要按照上面的步骤检查到底哪里出了问题。
怎么样,撸的开心吗?
Ubuntu 20.04安装CUDA CUDNN 手把手带你撸相关推荐
- Ubuntu 20.04安装CUDA失败导致系统黑屏消息nvidia 0000:01:00.0: can‘t change power state from D3cold to D0 的解决方法
Ubuntu 20.04安装CUDA失败导致系统黑屏消息nvidia 0000:01:00.0: can't change power state from D3cold to D0 的解决方法 贺志 ...
- ubuntu 20.04安装cuda
ubuntu 20.04中安装cuda 正确安装方法: 安装tensorflow后跑深度学习代码时,发现只在cpu上运行. 运行下列代码 import tensorflow as tf print(t ...
- 记录自己 Ubuntu 20.04 安装 CUDA 及 Pytorch
文章目录 一. 安装相关驱动 1. 查看显卡型号 2. 查找显卡驱动 3. 禁用 nouveau 3.1 检查是否已经禁用 3.2 禁用 nouveau 的具体命令 二. 安装 CUDA 1. 选择 ...
- Ubuntu 20.04 安装NVIDIA显卡驱动+cuda 11.7+cudnn 8.4
Ubuntu 18.04 安装NVIDIA显卡驱动+cuda 10.2+cudnn 本机环境 1 相关查询命令 一.Ubuntu 20.04 安装NVIDIA显卡驱动 二.Ubuntu 20.04 安 ...
- Ubuntu 18.04安装CUDA(版本10.2)和cuDNN
1.系统要求 2.安装前的要求 3.runfile安装(不支持跨平台) 4.后续安装操作 5.安装cuDNN 6.汇总问题 本文基于Ubuntu 18.04.3 LTS 64位安装CUDA 10.2和 ...
- Ubuntu 20.04 安装Tensorflow GPU版本 (GTX-1060显卡)
Ubuntu 20.04 安装Tensorflow GPU版本 (GTX-1060显卡) 参考: https://cyfeng.science/2020/05/02/ubuntu-install-nv ...
- Ubuntu 16.04 安装 CUDA Toolkit 10.0
Ubuntu 16.04 安装 CUDA Toolkit 10.0 NVIDIA 引领人工智能计算 - NVIDIA https://www.nvidia.cn/ CUDA Zone https:// ...
- Linux系统Ubuntu 20.04 ,cuda=11.1。实现C3D代码环境。
行为识别C3D代码(pytorch)实现过程及常见错误 1.C3D网络代码 C3D(pytorch)实现代码链接 C3D代码链接 2.C3D代码复现过程 我认为这位博主对于C3D复现过程的描述是非常好 ...
- 【Ubuntu 20.04安装和深度学习环境搭建 4090显卡】
Ubuntu安装步骤参考文章 知乎:Ubuntu 20.04系统安装及初始配置 目录 一. 制作启动盘 1.1 下载镜像文件 1.2 制作启动盘 二. 安装系统 2.1 启动计算机并进入BIOS 2. ...
最新文章
- 如何区分Android wrap_content和fill_parent的详细说明
- 5.6 图像颜色映射
- 基于MFCC系数的欧氏距离测量
- OS- -请求分页系统、请求分段系统和请求段页式系统(一)
- UE4 编译虚幻引擎
- kvm架构详解--理解CPU、内存、IO虚拟化技术、处理器硬件支持
- vSphere 7简介:混合云的功能和技术
- win10系统设置护眼色 word2016页面显示失败
- 阿里云Maven仓库pom文件配置
- GitHub 上史上最全的 iOS 开源项目分类汇总
- Eclipse - 取消英文拼写检查
- python实现排序算法lowb三人组之冒泡排序
- 推荐50个超实用的 Chrome 扩展,建议收藏!
- JAVA实验3 学校教师类
- 用python完成图形输出设备_使用numpy进行9宫格图像拼接 - Python
- 做IT项目经理什么要求?
- Python实现八字十神的输出
- 计算机总是无法完成更新失败,Win10系统更新失败无法完成更新正在撤销更改的解决方法...
- 关于个人微信公众号开通运营通知
- PHP AJAX Promise