Debian系列操作系统安装CUDA+CUDNN+TensorFlow+Pytorch深度学习环境
在实验室中,很多同学出现了设备环境中各式各样的NVIDIA显卡加速环境的问题,在最近笔者也正在做一些项目,但是都不同程度遇到了一些比较棘手的环境问题,所以以这篇文章来说明一下较为合理的环境配置方案。这里笔者选择的操作系统是国产操作系统Deepin,至于其他Debian系列的操作系统,安装过程是类似的。
- 安装显卡驱动
软件源驱动程序安装方法
这里强烈建议安装操作系统源上的驱动程序,因为每当系统更新的时候,源上的显卡驱动是按照本身发型版本的依赖关系来进行安装的,所以有比较好的兼容性。输入以下的命令就可以查看源上的闭源NVIDIA显卡驱动的版本号是什么样的:
apt-cache madison nvidia-driver
此处显示显卡驱动程序版本号。
[En]
The video card driver version number is displayed here.
下一步则是安装源上的驱动程序(以deepin V20.5为例)
sudo apt install nvidia-driver-bin
对于ubuntu系统可以用以下的命令对源上的程序进行查询处理
ubuntu-drivers device
通过这种方式,您可以列出相应的驱动程序并安装相应的驱动程序。
[En]
In this way, you can list the corresponding drivers and install the corresponding drivers.
sudo apt install nvidia-drivers-470
官网下载程序安装方法
另外,当然也可以选择从官网下载对应的驱动程序进行安装。这里需要注意的是,有些电脑设置有secure boot,所以在设置启动文件的时候注意这个的设置。
在安装之前,注意要将nouveau驱动禁用,也就是在文件 /etc/modprob.d/blacklist.conf
填写以下的内容禁用nouveau驱动
blacklist nouveau
options nouveau modeset=0
然后生成内核文件,注意原始内核文件的备份
[En]
Then generate the kernel file, pay attention to the backup of the original kernel file
sudo cp /boot/initrd.img-XXX /boot/initrd.img-XXX.back
sudo cp /boot/vmlinuz-XXX /boot/vmlinuz-XXX.back
sudo update-initramfs -u
从官网下载驱动后,安装驱动前
[En]
After downloading the driver from the official website, before installing the driver
首先安装gcc,make等一系列编译环境以及工具。
sudo apt install gcc-7 make
由于编译显卡需要一些内核编译的dev包还有一些headers,所以还需要安装以下的内核源码文件,这具体需要看显卡驱动需要什么样的内核,用以下的命令进行查询即可
apt search kernel
apt search headers
查找到对应的软件源文件之后,进行安装即可。(以Deepin V20.5为例)
sudo apt install linux-headers-5.10.101-amd64-desktop
- 安装CUDA+CUDNN 环境
为了兼容TensorFlow 和Pytorch环境,通过TensorFlow官网和Pytorch官网查询,我们最终推荐选择以下的两种方案参考:
- CUDA11.2+CUDNN8.1
- CUDA10.2+CUDNN7.6.5
当然也可以选择以上两种环境同时安装,但是这里要注意的是,两种环境的安装注意在 /usr/local/cuda/
文件夹当中出现的一些软链接错误的一些问题。
这两个环境的安装方法相似。首先,您需要安装一些必要的安装包。
[En]
The installation methods of the two environments are similar. First, you need to install some necessary installation packages.
sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev libgles2-mesa-dev
对于Debian系列的操作系统,可以选择Ubuntu18.04版本的(CUDA10.2+CUDNN7.6.5),以及Ubuntu20.04版本或者是Debian10版本的(CUDA11.2+CUDNN8.1)。为了保持软件的依赖关系稳定性,我们这里建议选择 *.run
文件进行安装,下载完成之后,安装的命令如下所示:
- 对于CUDA10.2版本
sudo bash cuda_XX.XX.XX_XX.XX.XX --toolkit --toolkitpath=/usr/local/cuda-10.2 --librarypath=/usr/local/cuda-10.2 --samples --samplespath=$HOME/
CUDNN选择Linux x86-64版本进行安装。下载完成安装包之后,安装CUDNN7.6.5如下所示
tar -xvf cudnn-10.2-linux-x64-v7.6.5.32.tgz
sudo mv cuda/include/* /usr/local/cuda-10.2/include/
sudo mv cuda/lib64/* /usr/local/cuda-10.2/lib64/
sudo chmod a+r /usr/local/cuda-10.2/include/cudnn.h /usr/local/cuda-10.2/lib64/libcudnn*
- 对于CUDA11.2版本
sudo bash cuda_XX.XX.XX_XX.XX.XX --toolkit --toolkitpath=/usr/local/cuda-10.2 --librarypath=/usr/local/cuda-10.2 --samples --samplespath=$HOME/
CUDNN依然选择Linux x86-64版本进行安装。下载完成安装包之后,安装CUDNN8.1如下所示
tar -xvf cudnn-11.2-linux-x64-v8.1.1.33.tgz
sudo mv cuda/include/* /usr/local/cuda-10.2/include/
sudo mv cuda/lib64/* /usr/local/cuda-10.2/lib64/
sudo chmod a+r /usr/local/cuda-10.2/include/cudnn.h /usr/local/cuda-10.2/lib64/libcudnn*
这样就可以将对应的CUDA包安装到 /usr/local/cuda
, /usr/local/cuda-10.2
, /usr/local/cuda-11.2
文件夹当中,但是安装过程当中注意对cuda链接工具的更新操作,选择适合于自己的开发环境进行安装处理。
- 安装TensorFlow 和Pytorch环境
首先,我们可以建立一个虚拟环境。
[En]
First of all, we can establish a virtual environment.
conda create -n tensorflowv15 python=3.7
conda create -n pytorchv16 python=3.7
conda create -n tensorflowv2 python=3.7
conda create -n pytorchv19 python=3.7
这里我们设置了四个环境,分别对应不同的环境进行模型训练,然后安装相应的安装包。
[En]
Here we set up four environments corresponding to different environments for model training, and then install the corresponding installation package.
Tensorflow1.15.0环境
pip install tensorflow-gpu==1.15.0
Tensorflow2.2.0环境
pip install tensorflow==2.2.0
Pytorch 环境
pip install pytorch==1.x
安装TensorFlow环境之后经常会出现以下的一些问题,我们这里以CUDA11.2+CUDNN8.1+Tensorflow2.7.0为例,经常会出现以下的一些库文件无法找到
libcudart.so.11.0,libcublas.so.11,libcublasLt.so.11,libcufft.so.10,libcurand.so.10,libcusolver.so.10,libcusparse.so.11,libcudnn.so.8
在这种情况下,您只需创建指向相应文件的软链接,例如
[En]
In such a case, you only need to make a soft link to the corresponding file, for example
sudo ln -s libcublas.so.11.4.1.1043 libcublas.so.11
Original: https://blog.csdn.net/Zhang_Pro/article/details/123718319
Author: Mobtgzhang
Title: Debian系列操作系统安装CUDA+CUDNN+TensorFlow+Pytorch深度学习环境
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/497039/
转载文章受原作者版权保护。转载请注明原作者出处!