Debian系列操作系统安装CUDA+CUDNN+TensorFlow+Pytorch深度学习环境

Debian系列操作系统安装CUDA+CUDNN+TensorFlow+Pytorch深度学习环境

在实验室中,很多同学出现了设备环境中各式各样的NVIDIA显卡加速环境的问题,在最近笔者也正在做一些项目,但是都不同程度遇到了一些比较棘手的环境问题,所以以这篇文章来说明一下较为合理的环境配置方案。这里笔者选择的操作系统是国产操作系统Deepin,至于其他Debian系列的操作系统,安装过程是类似的。

  1. 安装显卡驱动

软件源驱动程序安装方法
这里强烈建议安装操作系统源上的驱动程序,因为每当系统更新的时候,源上的显卡驱动是按照本身发型版本的依赖关系来进行安装的,所以有比较好的兼容性。输入以下的命令就可以查看源上的闭源NVIDIA显卡驱动的版本号是什么样的:

apt-cache madison nvidia-driver

此处显示显卡驱动程序版本号。

[En]

The video card driver version number is displayed here.

Debian系列操作系统安装CUDA+CUDNN+TensorFlow+Pytorch深度学习环境
下一步则是安装源上的驱动程序(以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
  1. 安装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链接工具的更新操作,选择适合于自己的开发环境进行安装处理。

  1. 安装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/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球