前言:
😊😊😊欢迎来到本博客😊😊😊
🌟🌟🌟 本专栏主要是记录工作中、学习中关于AI(Deep Learning)相关知识并分享。
😊😊😊 具体食用方式:可以点击本专栏【笔记目录】快速查阅您和我遇到的一样的问题、想查阅的知识以及其他相关问题。
🎁🎁🎁支持:如果觉得博主的文章还不错或者您用得到的话,可以悄悄关注一下博主哈,如果三连收藏支持就更好啦!这就是给予我最大的支持!😙😙😙
![](https://i-blog.csdnimg.cn/blog_migrate/078891516c34a5121a0f41b53372617e.png)
疑问:我要干什么?我该怎么装?装的对不对?
工欲善其事,必先利其器! 很多同学在配置深度学习环境的时候,踩过很多坑!尤其是在CUDA、cuDNN 和 PyTorch版本选择的时候一直装不对。下面就以笔记本RTX3050、CUDA11.7、PyTorch1.3.0为例,详细介绍安装过程
。
(1) 了解各组件
组件名 | 定义 | 作用 |
---|---|---|
显卡驱动 (GPU Driver) | 用于连接计算机的操作系统和显卡之间的通信。它负责管理和控制显卡的功能,使其能够正常地与操作系统和其他应用程序进行交互。 | 显卡驱动在计算机中起着桥梁的作用,将操作系统和显卡连接起来,确保它们能够有效地协同工作,提供高性能的图形处理能力。 |
CUDA (Compute Unified Device Architecture) | 由NVIDIA开发的一种并行计算平台和编程模型。它允许开发人员使用GPU(图形处理器)进行通用计算,而不仅仅局限于图形渲染。简单说,CUDA提供了一套编程接口和工具,使开发人员能够利用GPU的强大并行计算能力来加速各种应用程序,包括科学计算、数据分析、机器学习等。 | CUDA提供了一种利用GPU进行并行计算的平台和编程模型,使开发人员能够更好地利用GPU的性能来加速各种计算任务。它的出现极大地提高了计算能力和效率,推动了科学计算和数据分析等领域的发展。 |
CUDA Toolkit | CUDA Toolkit是由NVIDIA提供的一套开发工具和库,用于支持CUDA平台上的并行计算应用程序的开发和优化。 | CUDA Toolkit是一套专门用于开发和优化CUDA并行计算应用程序的工具和库。它提供了编译器、调试器、运行时库、并行计算库以及各种开发工具,方便开发人员利用GPU的并行计算能力来加速各种计算密集型任务。CUDA Toolkit极大地简化了CUDA程序开发过程,并提供了优化工具和库,使开发人员能够更好地利用GPU的性能。 |
cuDNN (CUDA Deep Neural Network Library) | 由NVIDIA提供的一个深度神经网络库,用于加速深度学习应用程序的开发和训练。简单来说,cuDNN提供了一套高性能的深度学习算法和函数集合,以及针对GPU硬件的优化实现。 | uDNN是一个高性能的深度神经网络库,用于加速深度学习应用程序在GPU上的训练和推断过程。它提供了优化的算法实现、硬件加速和算法调优等功能,方便开发人员利用GPU的计算能力来获得更高的性能和效率。cuDNN大大简化了深度学习应用程序的开发过程,使开发人员能够更专注于模型设计和算法调优。 |
PyTorch | PyTorch 是一个深度学习框架,它提供了用于构建和训练神经网络的高级API。PyTorch支持GPU加速,可以利用CUDA来加速深度学习任务。 | PyTorch允许开发者构建灵活的神经网络模型,并使用CUDA加速训练和推理过程。PyTorch的深度学习库可与cuDNN和CUDA Toolkit集成,以获得GPU性能提升。还有其他框架,比如:TF(TensorFlow、Caffe等等) |
(2) 组件之间的关系
通过一张图可以清除了解以上一些组件之间的关系:
![](https://i-blog.csdnimg.cn/blog_migrate/f2eb5b3fa369863541eb2317fda28fdc.png)
简单介绍如下:
【Nvidia Driver显卡驱动】:操作系统和硬件GPU进行沟通交互的程序,没有显卡驱动,GPU就是一个摆设,调用不起来。先装好驱动,电脑就能使用GPU,但是深度学习搞不定。
【CUDA Toolkit工具包】:是基于驱动程序,用来实现GPU并行计算和加速深度学习的软件包。通过这个软件包,调用驱动,实现更加高级的功能。
【cuDNN深度学习加速库】:是专门针对深度学习的GPU加速库,如果你要使用深度学习框架,这个是必需的。虽然也是CUDA Toolkit的组件,但是官方的下载包里面并没有,需要自己额外下载。
【pytorch,tensorflow深度学习框架】:CUDA Toolkit并没有提供深度学习的框架,只是提供了如何高效调用GPU的软件库。如果你要创建深度学习模型,进行训练。还是要使用深度学习框架。
【Nvidia官方下载的CUDA】:官方下载的CUDA Toolkit是包含了驱动的,并且联合到一块是称为CUDA的。
conda下载的CUDA:是不包含驱动的,但是高版本的驱动,是向前兼容的,可以下载相匹配的cuda toolkit,构成不同版本的cuda
(3) 选择各个组件的版本
选择安装主要流程如下:
![](https://i-blog.csdnimg.cn/blog_migrate/8615bd36cc2985a3270c409b468fbe14.png)
以下内容还请仔细阅读!
一、显卡驱动
显卡驱动一般电脑自带(预先安装好),如果没有,可以到官方:链接。选择与自己本机显卡配置、操作系统等匹配的驱动下载:
![](https://i-blog.csdnimg.cn/blog_migrate/5b3fbe77157b7320f80e7a070948386f.png)
一、CUDN选择与安装
一般来讲是需要先确定CUDA版本,然后再按照后续流程确定其他配置版本。
那么如何选择一个CUDA版本呢,首先有一个原则,就是选择的CUDA版本不可以高于本机支持的最高CUDA版本。而本机支持的最高CUDA版本由显卡驱动决定,查看方式为:
win + R:进入命令行模式
nvidia -smi:查看详细内容
![](https://i-blog.csdnimg.cn/blog_migrate/c9e03ca3d231523a11dff9605c854983.png)
重点来了!!!
下表总结了目前最新版本的CUDA、PyTorch、torchvision、显卡算力以及python版本对应:
![](https://i-blog.csdnimg.cn/blog_migrate/ad37ab1127cba09d5c558034ce1128af.png)
显卡算力详见官网:链接
![](https://i-blog.csdnimg.cn/blog_migrate/2f8e7639659a2f64b29f8cc1991f82a5.png)
![](https://i-blog.csdnimg.cn/blog_migrate/461c83f95770dd10a2cc355c9f026d67.png)
![](https://i-blog.csdnimg.cn/blog_migrate/71ffbd320bb606f9bdbbe71b065e8fba.png)
接下来就是CUDA(CUDA Toolkit下载安装):官方链接。
(1) 进入官网选择对应版本
![](https://i-blog.csdnimg.cn/blog_migrate/4e8a167e828657547302747e695593b9.png)
最新版本下载
![](https://i-blog.csdnimg.cn/blog_migrate/91ad2c314e2129168e4ef421d9af70af.png)
旧版本下载:链接
![](https://i-blog.csdnimg.cn/blog_migrate/af53647e68a305d6fbc8d43077f134a5.png)
![](https://i-blog.csdnimg.cn/blog_migrate/43f660cec2036d69e5727574a97b3c45.png)
(2) 安装
1.点击下载的.exe
文件,选择安装位置【此位置临时使用,后面会自动删除】。
![](https://i-blog.csdnimg.cn/blog_migrate/0a9d69c645e422abba180f05d249d5f9.png)
2.等待安装完成。
![](https://i-blog.csdnimg.cn/blog_migrate/907ee7a0b5b894b6e6ad344eb6405be3.png)
3.检查系统兼容性。
![](https://i-blog.csdnimg.cn/blog_migrate/030d0d6dce4a26b1a51001d4727411b2.png)
4.继续。
![](https://i-blog.csdnimg.cn/blog_migrate/17b0ddfe9259bbf9b9f041215a2bf248.png)
5.同意并继续。
![](https://i-blog.csdnimg.cn/blog_migrate/16eaba5926db2e926794d1152880e51d.png)
6.自定义。
![](https://i-blog.csdnimg.cn/blog_migrate/a9e343e940ba50913a8b59b2b1238596.png)
7.组件可全选,仅选第一个也可。
![](https://i-blog.csdnimg.cn/blog_migrate/46db1a1f115eac174ddd13805ab6b18c.png)
8.点击“下一步”,默认位置即可。
![](https://i-blog.csdnimg.cn/blog_migrate/647159d50bf3cb6b0d91728bc0bb7a62.png)
9.等待安装。
![](https://i-blog.csdnimg.cn/blog_migrate/9d689b1e438ce1ed78964b5c9ab7ee3a.png)
10.下一步。
![](https://i-blog.csdnimg.cn/blog_migrate/675eba8c4ea4ed1ad901fcf71e77e1f1.png)
11.安装完成。
![](https://i-blog.csdnimg.cn/blog_migrate/45c0df2b3d80264045d361feba30eb9f.png)
(3) 检查是否成功
1.查看环境变量是否添加。
![](https://i-blog.csdnimg.cn/blog_migrate/0fbd04a1ed497d6b9f631bb35623af77.png)
2.命令行分别打出如下命令后,显示如下,则说明安装成功。
nvcc -V
set cuda
![](https://i-blog.csdnimg.cn/blog_migrate/dbf9e7d0a5a7645b2f12f35b449118d3.png)
二、cuDNN选择与安装
cuDNN【官方地址】,要注意的是,我们需要注册一个账号,才可以进入到下载界面。大家可以放心注册。
(1) 进入官网选择对应版本
![](https://i-blog.csdnimg.cn/blog_migrate/aee1416aea8b319edab2281e49cdefba.png)
以下图为例:
![](https://i-blog.csdnimg.cn/blog_migrate/e86cfc264ec209befb8eba08b8e12bb3.png)
(2) 下载解压、复制替换
下载完成后,将压缩包解压,将文件夹内的文件(bin/include/lib
),复制粘贴(替换)至CUDA安装目录下(默认地址):
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7
![](https://i-blog.csdnimg.cn/blog_migrate/fe1bf44c0b0937b351b8d43b7da31090.png)
![](https://i-blog.csdnimg.cn/blog_migrate/ac1aead69a2b1b2919f128c8ec8a141c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/66ca56c6f39f7a606cb428e822122507.png)
拷贝时看到,CUDA 的安装目录中,有和 cuDNN 解压缩后的同名文件夹,这里注意,不需要担心,直接复制即可。cuDNN 解压缩后的同名文件夹中的配置文件会添加到 CUDA安装目录中的同名文件夹中。
(3) 设置环境变量
现在应该可以理解,cuDNN 其实就是 CUDA 的一个补丁而已,专为深度学习运算进行优化的。然后再添加环境变量。
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\include
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\lib
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\libnvvp
![](https://i-blog.csdnimg.cn/blog_migrate/6db0ac9ffdb5ee8a79131df9e90e390e.png)
(4) 验证安装是否成功
启动cmd打开命令行,cd到安装目录下的 …\extras\demo_suite
,然后分别执行bandwidthTest.exe
和deviceQuery.exe
(进到目录后需要直接输“bandwidthTest.exe”和“deviceQuery.exe”)。
![](https://i-blog.csdnimg.cn/blog_migrate/692a589ddcc86bc8998b71cbe72de9b0.png)
或者直接将两个.exe
文件拖进去:
![](https://i-blog.csdnimg.cn/blog_migrate/65bf900ff330a98694f33ac85707767b.png)
![](https://i-blog.csdnimg.cn/blog_migrate/6e8948e32ab0f7386ad8f5b48a92d08a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/fcaf0f33ed10aa40e30d618fc2fc49e1.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1bbf47d662bfa7fa62200e0aa897602a.png)
得到以上信息,说明安装成功!
三、PyTorch选择与安装
(1) 虚拟环境
在安装PyTorch之前,python相关环境准备好。这里推荐使用Anaconda并创建虚拟环境,至于Anaconda的安装,这里不赘述了,网上有一大堆,基本都是通俗易懂的。重要的是:使用pip
的时候,网速过慢,建议使用清华镜像源或其他!!
(2) 选择下载安装PyTorch
虚拟环境创建好之后,进入虚拟环境,并进入PyTorch官网(链接),选择合适的环境安装。
![](https://i-blog.csdnimg.cn/blog_migrate/675cb130fcb83096f94724456775139a.png)
以下是我安装的环境(如果有问题使用pip3
):
pip install torch==1.13.0+cu117 torchvision==0.14.0+cu117 torchaudio==0.13.0 --extra-index-url https://download.pytorch.org/whl/cu117
![](https://i-blog.csdnimg.cn/blog_migrate/07b7a60910c0d8a2151c3ba986caf2bf.png)
(3) 验证安装是否成功
安装完成之后,首先进入虚拟环境,然后通过以下几个命令来验证:
![](https://i-blog.csdnimg.cn/blog_migrate/54fee32f5c92d0686187780fb81ca40a.png)
import torch
print(torch.__version__) # 查看torch当前版本号
print(torch.version.cuda) # 编译当前版本的torch使用的cuda版本号
print(torch.cuda.is_available()) # 查看当前cuda是否有可用的Torch,如果输出True,则表示存在/成功安装
![](https://i-blog.csdnimg.cn/blog_migrate/80e567a7f9f4dde73801621ebb79ac3f.png)
至此,在本文创建的虚拟环境中成功安装深度学习环境,显卡为RTX3050,torch版本为1.13.0,cuda版本为11.7,python为3.7。
![](https://i-blog.csdnimg.cn/blog_migrate/2da0b374ad5b43a181d44ff039f60900.gif)