Win10深度学习GPU环境搭建步骤
写在前面
建议安装过程尽量选择默认位置。
安装 Nvidia 显卡驱动
进入任务管理器 ——> 性能
查看个人的 GPU 型号,然后进入 NVIDIA 官网
选择适合自己的 GPU 型号下载对应驱动。显卡驱动尽量使用最新版本,如果已经安装的可以进行更新。
个人电脑如果是笔记本,产品系列一定要选择带有 Notebooks 字样的进行下载,接下来就是打开下载文件依次点击同意开始安装,选择默认安装目录即可:
最后进入 CMD 命令窗口,输入nvidia-smi
得到如下所示信息则表示安装成功:
注:显卡驱动的 CUDA 版本表示可安装的最新CUDA 版本(可选择 ≤11.6 的版本)
安装 CUDA Toolkit
根据显卡驱动的版本查看对应可安装的 CUDA 版本,可以参考下表(表格来源 ):
进入 Nvidia 提供的 CUDA Toolkit
, 比如我这里对应的 CUDA 版本是 11.6,但我选择安装[CUDA Toolkit 11.5.2 (March 2022)
,点击下载并打开,安装路径依旧使用默认,依次点击同意安装完成即可:
安装完成后重启电脑,查看系统环境变量 Path,发现多出两项关于 CUDA 的路径:
安装 Visual Studio
这里建议安装 Visual Studio 2019 版本,进入Visual studio 历史版本页面
选择Visual Studio Community 2019 (version 16.11)
进行下载,然后运行安装,安装过程需要勾选红框标注部分配置,其余自选:
根据自己的安装位置进入以下路径,如果找不到文件,建议下载 Everything,帮助我们在 Windows 上快速查找文件的软件,这里由于我之前安装了 VS2019,因此这里我们直接打开nbody_vs2019.sln
这个文件:
接着点击 Windows 搜索框选择进入 Developer Command Prompt for VS2019 应用,输入set TraceDesignTime=true
,再输入devenv
,然后启动 VS 2019 打开nbody_vs2019.sln
文件,切记命令窗口不要关闭:
点击生成解决方案,一般情况下会先遇到这个错误:
接着进入提出出现错误的路径,将C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.5\extras\visual_studio_integration\MSBuildExtensions
路径下的四个文件复制到对应上图提示的错误路径C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\BuildCustomizations
:
然后重新点击生产解决方案,得到以下提示成功!
验证 CUDA 是否安装成功,在 Powershell 中输入以下命令打开 nbody 目录:
cd ‘C:\ProgramData\NVIDIA Corporation\CUDA Samples\v11.5\bin\win64\Debug’
执行以下命令运行 nbody,可以看到 CUDA 使用的 GPU,按住Ctrl+C
停止运行:
.\nbody.exe
安装 cuDNN
接下来是按照 cuDNN,到这里进入cuDNN 网站 ,点击 Download cuDNN,接着注册 Nvidia 的开发者账号并登录,然后选择对应的 CUDA 版本下载对应安装包:
这里有不同的安装方式,最简单的就是下载 .exe 文件,然后依次点击同意即可,这里我选择下载 zip 包的方式安装,以便后续多版本 CUDA 和 cuDNN 管理:
我们将下载好的 zip 包解压,将 CUDA 安装位置C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.5
的 3 个文件使用解压后的 zip 文件进行替换,注意是进入每个目录分别替换文件夹:
验证安装是否成功
验证 CUDA 安装成功
进入C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.5\extras\demo_suite
,路径框输入 cmd 即可进入该目录的终端,运行bandwidthTest.exe
和deviceQuery.exe
这两个应用程序,以下结果表示安装成功:
验证 cuDNN 安装成功
这里我们直接创建一个 tensorflow≥2.0 的 Python 环境进行测试:
import tensorflow as tf
tf.compat.v1.disable_eager_execution()
with tf.device('/gpu:0'):
a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a')
b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b')
c = tf.matmul(a, b)
with tf.compat.v1.Session() as sess:
print (sess.run(c))
如果看到以下输出,则表示安装成功
多个版本的 CUDA 切换
这里继续安装CUDA 11.6
的版本,重复之前安装 CUDA Toolkit 步骤,选择对应的 v11.6 的版本即可,在使用 Visual studio 验证部分,v11.6 版本中示例已被移除,并且对应的四个 CUDA 文件已经被安装到对应位置,因此无需再次复制。这里安装最新的 cuDNN 8.8.1。
进入电脑环境变量设置,发现在重新安装 CUDA 11.6 版本后,系统变量已由之前的 v11.5 变为 v11.6,现在我们重新切换到 CUDA v11.5 环境:
- 进入电脑环境变量设置,将系统变量下的
CUDA PATH
中的 v11.6 变为 v11.5
- 将系统变量下
v11.5
的两个相关文件置顶
- 再次验证,CUDA 版本由 v11.6 切换到 v11.5