[人工智能-深度学习-41]:开发环境 - GPU进行训练安装与搭建(PytrochTensorFlowNvidia CUDA)详细过程

Posted 文火冰糖的硅基工坊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[人工智能-深度学习-41]:开发环境 - GPU进行训练安装与搭建(PytrochTensorFlowNvidia CUDA)详细过程相关的知识,希望对你有一定的参考价值。

作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

 本文网址:https://blog.csdn.net/HiWangWenBing/article/details/121241620


目录

第1章 英伟达Nvidia CUDA 编程框架简介

1.1 概述

1.2 不同模块的版本制约关系

第2章 英伟达CUDA OS环境的安装(Tensorflow和Pytorch共用)

2.1 GPU硬件的安装与确认: 本文以台式机RTX2070为例

2.2 Nvidia GPU显卡硬件驱动的更新 (针对操作系统)

2.3 Nvidia GPU显卡硬件驱动的新安装 (硬件驱动程序库)

2.4 Nvidia Cuda 的安装(并行计算框架库)

2.3 Nvidia cuDNN的安装(卷积库)

第3章 通过清华镜像安装cuda和cudnn

3.1 主页

3.2 通过网站直接下载cuda window版本安装

3.3 通过网站直接下载cudnn windows版本安装

3.4 解压

3.5 安装

第4章 Pytorch 深度学习框架GPU库的安装

4.1 前提: 已经安装好了Anaconda的开发环

4.2 为Pytorch准备好虚拟环境

4.3  通过conda安装 cudatoolkit和cudnn (如果没有安装的话)

4.4 安装 Pytorch GPU库(大致需要1小时)

4.5 验证pytorch GPU库的安装

第5章 Tensorflow 深度学习框架GPU库的安装

5.1 前提: 已经安装好了Anaconda的开发环

5.2 为tensorflow创建conda的虚拟项目环境

5.3  通过conda安装 cudatoolkit和cudnn (如果没有安装的话)

5.4  tensorflow的GPU的安装

5.5 验证



第1章 英伟达Nvidia CUDA 编程框架简介

1.1 概述

CUDA(Compute Unified Device Architecture),是显卡厂商NVIDIA推出的运算平台。

CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。 它包含了CUDA指令集架构(ISA)以及GPU内部的并行计算引擎。

开发人员现在可以使用C语言来为CUDA™架构编写程序,C语言是应用最广泛的一种高级编程语言。所编写出的程序于是就可以在支持CUDA™的处理器上以超高性能运行。CUDA3.0已经开始支持C++和FORTRAN和python。

计算行业正在从只使用CPU的“中央处理CPU与GPU并用的“协同处理”发展。为打造这一全新的计算典范,NVIDIA™(英伟达™)发明了CUDA(Compute Unified Device Architecture,统一计算设备架构)这一编程模型,是想在应用程序中充分利用CPU和GPU各自的优点。

现在,该架构已应用于GeForce™(精视™)、ION™(翼扬™)、Quadro以及Tesla GPU(图形处理器)上。 

https://blog.csdn.net/HiWangWenBing/article/details/121220362https://blog.csdn.net/HiWangWenBing/article/details/121220362

 从上图可以看出,如果在CPU上运行(训练与预测),只需要到左侧的CPU环境,这个环境,在安装annacond的时候已经全部搞定。

然后, 如果需要在GPU上运行,不仅仅需要左侧的CPU,增加了右侧的GPU, 为了能够在使得CPU和GPU能够协同工作,从底层到应用层,都需要做适当的改进,才能够在GPU上正确的运行,包括操作层GPU的驱动程序、系统库层的GPU的系统库、算法库,这些是不同深度学习框架共有的,除此之外,不同的深度学习框架,也需要按照相应的库,以方便应用程序简洁的通过深度学习框架提供的API使用GPU或CPU进行训练与预测。

1.2 不同模块的版本制约关系

  • GPU driver: 450.xx, 379x
  • CUDA 版本: 10.x.x, 11.x.x
  • cudnn版本:   7.6.x,  8.2.x
  • Aannada版本: 4.x, 
  • Python版: 3.6.x,  3.7.x, 3.8 
  • Pytorch版本: 1.8.x ,  1.9.x,  10.x
  • Tensorflow版本: 1.x.x,  2.x.x

第2章 英伟达CUDA OS环境的安装(Tensorflow和Pytorch共用)

说明:本文以Windows10为例。

2.1 GPU硬件的安装与确认: 本文以台式机RTX2070为例

(1) 硬件说明

注意1:显卡驱动有笔记本和台式机的区别,官网下载驱动时请注意选择notebook版本还是默认的台式机版本

注意2:如果使用台式机出现黑屏情况,请将连接显示器的数据线接在CPU端口的核显上,安装好后再接在独显的端口上,HDMI、VGA、mDP的线都可以,看你的机器CPU和独显输出都有哪些端口

显卡型号:RTX2070
 

(2)硬件驱动的确认

 在桌面上右击如果能找到NVIDA控制面板,则说明该电脑有GPU显卡。

控制面板如下,并通过查看系统信息获取该GPU硬件支持的Cuda并行计算开发框架的版本。

上图中,RTX2070 Super支持的驱动版本是496.13,这个版本会限定了CUDA的选择,不能选择过高的CUDA的版本,否则最新的CUDA功能将在此硬件上无法实现!!!

如果没有NVIDA控制面板,或看不到相应的硬件的驱动信息,就需要为NVIDA GPU安装特定操作系统的硬件驱动程序了。

2.2 Nvidia GPU显卡硬件驱动的更新 (针对操作系统

说明:

由于CUDA并行框架的新功能依赖于硬件驱动的版本与功能。

因此如果充分利用CUDA的功能,最好能够升级硬件驱动到最新版本,然后在根据硬件驱动支持的最高版本,选择CUDA的版本。否则,高版本的CUDA的功能在低版本的驱动上无法实现!!!

 

 

2.3 Nvidia GPU显卡硬件驱动的新安装 (硬件驱动程序库)

(1)官网驱动下载地址:

https://www.geforce.cn/drivers

(2)选择GPU型号

(3)下载新驱动安装

(4)安装驱动程序

2.4 Nvidia Cuda 的安装(并行计算框架库)

说明:Cuda的版本越高,功能越强大与完善,但所需要的底层硬件驱动程序的版本就越高,因此Cuda要与硬件驱动的版本兼容。

低版本的硬件驱动,高版本的Cuda的功能无法得到实现。

因此,需要确保Cuda与硬件驱动的一致性。

(1)CUDA 版本与硬件驱动程序对应关系表官网

Release Notes :: CUDA Toolkit Documentation

(2)选择CUDA的版本

 备注:CUDA的版本受限于硬件驱动的版本。

  • 在本案例中,硬件支持的Windows驱动程序的最新版本是:496.13, Cuda的最高版本可以选择11.4以上的版本,也可以选择低于11.4的版本。
  • 在硬件驱动版本限制的情况下,尽可能选择高一点版本的CUDU,以支持更多的功能。

(3)下载cuda(15分钟)

CUDA Toolkit 9.0 Downloads | NVIDIA Developerhttps://developer.nvidia.com/cuda-90-download-archive

  • Local本地安装模式(适合没有网络的用户): 2.4G的大小,着实需要较长的下载时间,下载后安装比较快。
  • Network网络安装模式(适合有网络的用户):文件比较小,安装时需要网络。

(4)安装(10分钟)

选择精简安装,这样节省空间。

(5)安装后的检查

安装好之后的环境变量默认包含:
CUDA_PATH:C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v11.5
CUDA_PATH_V11.5:C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v11.5
PATH:
    C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v11.5\\bin
    C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v11.5\\libnvvp
    C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v11.5\\extras\\CUPTI\\libx64(这个需要自己添加)

2.3 Nvidia cuDNN的安装(卷积库)

cudnn是pytorch搭建深度学习模型的依赖,没有它,不能运行卷积等操作。

目前下载cuDNN比较麻烦,要在官网注册,而且有时候网站打不开。

(1)官网下载地址:

cuDNN Archive | NVIDIA Developer

(2)版本选择

(3)下载

(4)安装(手工)

  • 解压cuDNN后得到bin、include、lib三个文件夹
  • 将bin下的cudnn64_7.dll拷贝到:C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v10.0\\bin

  • 将include下的cudnn.h拷贝到:C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v10.0\\include

  • 将lib\\x64下的cudnn.lib拷贝到:C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v10.0\\lib\\x64

(5)安装后检查

第3章 通过清华镜像安装cuda和cudnn

3.1 主页

Index of /anaconda/pkgs/main/win-64/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirrorhttps://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64/

3.2 通过网站直接下载cuda window版本安装

3.3 通过网站直接下载cudnn windows版本安装

3.4 解压

3.5 安装

第4章 Pytorch 深度学习框架GPU库的安装

4.1 前提: 已经安装好了Anaconda的开发环

[Python系列-1]:Python命令行集成开发环境AnaConda的详细安装过程_文火冰糖(王文兵)的博客-CSDN博客作者主页(文火冰糖的硅基工坊):https://blog.csdn.net/HiWangWenBing本文网址:目录1. AnaConda概述(开源的Python发行版本)2.AnaConda的详细安装过程2.1 选择下载AnaConda的网站2.2 选择下载AnaConda的版本2.3 下载:清华镜像,几分钟的时间2.4 安装:大致10分钟2.5 在命令行下检查anaconda的版本2.6 在命令行下检查python的安装版本2.7 修改conda的配置文件,.https://blog.csdn.net/HiWangWenBing/article/details/119159719

4.2 为Pytorch准备好虚拟环境

创建pytorch环境, 如:conda create -n pytorch1.8_py3.8

激活pytorch环境, 如:conda activate pytorch1.8_py3.8

4.3  通过conda安装 cudatoolkit和cudnn (如果没有安装的话)

conda install cudatoolkit=10.2  #在激活的环境中安装cudatoolkit (GPU 工具集)

conda install cudnn=7.6           #在激活的环境中安装cudnn (卷积库)

或者指定镜像地址

conda install cudatoolkit=10.2 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64/

4.4 安装 Pytorch GPU库(大致需要1小时)

(1)登录到官网

PyTorchAn open source machine learning framework that accelerates the path from research prototyping to production deployment.https://pytorch.org/

(2)获取conda的执行命令

安装pytorch最新版本: conda install pytorch torchvision torchaudio cudatoolkit=10.2 -c pytorch

 ( 去掉后面的 -c pytorch 就是只使用清华源,不去掉就是官方源也可能会用到)

备注:这个过程需要较长的时间,根据网络的情况,可能要数个小时。

  • pytorch:pytorch基础库
  • torchvision:图像处理图
  • torchaudio:语音处理库
  • cudatoolkit:cuda GPU工具链 (只包括深度学习框架自身提供的cuda工具链,不包括Nvidia提供的工具链)

4.5 验证pytorch GPU库的安装

  • 进入python解析器

(pytorch1.8_py3.8) PS C:\\Users\\Administrator> python                                                                    Python 3.8.10 (default, May 19 2021, 13:12:57) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32

Type "help", "copyright", "credits" or "license" for more information.

  • 导入pytorch库

>>> import torch

  • 调用pytorch库函数,检查GPU是否支持。

>>> torch.cuda.is_available()
True

  • 检查cuda的版本

>>> print(torch.version.cuda)

'10.2'

  • 检察院cudnn版本

>>> torch.backends.cudnn.version()

7605

  • 退出python解析器,回到conda环境

>>> quit()

第5章 Tensorflow 深度学习框架GPU库的安装

5.1 前提: 已经安装好了Anaconda的开发环

[Python系列-1]:Python命令行集成开发环境AnaConda的详细安装过程_文火冰糖(王文兵)的博客-CSDN博客作者主页(文火冰糖的硅基工坊):https://blog.csdn.net/HiWangWenBing本文网址:目录1. AnaConda概述(开源的Python发行版本)2.AnaConda的详细安装过程2.1 选择下载AnaConda的网站2.2 选择下载AnaConda的版本2.3 下载:清华镜像,几分钟的时间2.4 安装:大致10分钟2.5 在命令行下检查anaconda的版本2.6 在命令行下检查python的安装版本2.7 修改conda的配置文件,.https://blog.csdn.net/HiWangWenBing/article/details/119159719

5.2 为tensorflow创建conda的虚拟项目环境

conda create -n tensorflow2.4_py3.8 python=3.8

conda activate tensorflow2.4_py3.8
 

5.3  通过conda安装 cudatoolkit和cudnn (如果没有安装的话)

conda install cudatoolkit==10.2  #在激活的环境中安装cudatoolkit (GPU 工具集)

conda install cudnn==7.6           #在激活的环境中安装cudnn (卷积库)

5.4  tensorflow的GPU的安装

pip install tensorflow-gpu         # 安装tensorflow (gpu 基础库) 

备注:

上述只包括深度学习框架自身提供的cuda工具链和cudnn库,不包括Nvidia提供的工具链和cudnn库。

5.5 验证

  • 进入python解析器

(tensorflow2.4_py3.8) PS C:\\Users\\Administrator> python                                                                    Python 3.8.10 (default, May 19 2021, 13:12:57) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32

Type "help", "copyright", "credits" or "license" for more information.

  • 导入tensorflow库

>>> import tensorflow as tf

  • 调用tensorflow库函数,检查GPU是否支持。

>>> tf.__version__
'2.4.0'
>>> tf.__path__

  • 检查是否支持GPU

>>> tf.test.is_gpu_available()

True

  • 退出python解析器,回到conda环境

>>> quit()
 


作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/121241620

以上是关于[人工智能-深度学习-41]:开发环境 - GPU进行训练安装与搭建(PytrochTensorFlowNvidia CUDA)详细过程的主要内容,如果未能解决你的问题,请参考以下文章

物体检测快速入门系列-Windows部署Docker GPU深度学习开发环境

[人工智能-深度学习-38]:环境搭建 - 训练主机硬件选择全指南(CPU/GPU/内存/硬盘/电源)

[AI开发]深度学习如何选择GPU?

[人工智能-深度学习-38]:英伟达GPU CUDA 编程框架简介

薅百度GPU羊毛!PaddlePaddle大升级,比Google更懂中文,打响AI开发者争夺战

基于docker搭建conda深度学习环境(支持GPU加速)