问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

深度学习GPU加速入门:从驱动安装到TensorFlow验证

创作时间:
作者:
@小白创作中心

深度学习GPU加速入门:从驱动安装到TensorFlow验证

引用
CSDN
1.
https://blog.csdn.net/qq_52730883/article/details/130650143

在深度学习领域,使用GPU加速训练模型已成为提高效率的常见做法。本文将详细介绍如何在Windows环境下配置GPU加速环境,包括安装NVIDIA显卡驱动程序、CUDA和cuDNN等关键组件,并通过TensorFlow进行验证。

前言

在深度学习中,训练模型通常需要反复优化,仅使用CPU训练会耗费大量时间。使用GPU加速可以显著减少训练时间。下图展示了使用GPU加速与未使用GPU加速的训练时间对比:

接下来,我们将详细介绍如何在深度学习训练模型过程中使用GPU加速。注意:以下安装步骤及命令仅支持Windows环境下安装,其他操作系统安装教程将后续发布。

安装NVIDIA显卡驱动程序

首先在搜索栏中搜索设备管理器,打开后在显示适配器中找到电脑显卡版本。然后在NVIDIA官方网站中找到对应显卡版本的驱动程序进行安装。

NVIDIA显卡驱动程序下载链接

找到对应版本进行下载:

下载后进行安装。选择默认位置安装,点击OK即可。最后,打开命令提示符输入nvidia-smi指令查看显卡驱动信息:

nvidia-smi

看到相关信息即证明NVIDIA显卡驱动程序已安装成功。

安装CUDA和cuDNN

简介

CUDA(Compute Unified Device Architecture)是NVIDIA推出的通用并行计算平台和编程模型,允许开发人员使用C++、Fortran和Python等编程语言在NVIDIA GPU上运行代码。CUDA Toolkit包括GPU加速的库、调试和优化工具、C/C++编译器以及运行时库等。

cuDNN(CUDA Deep Neural Network library)是一个高性能的GPU加速深度学习库,支持卷积神经网络、循环神经网络等多种神经网络模型,并且可以与TensorFlow、PyTorch等深度学习框架集成。cuDNN提供高度优化的实现,包括卷积、池化、标准化和激活等常用操作。

检查版本兼容性

版本兼容性对于GPU加速非常重要。可以在TensorFlow和NVIDIA官方文档中查找对应GPU、CUDA、cuDNN和Python版本。例如:

安装CUDA

CUDA 11.2的下载链接:CUDA 11.2.0

下载完成后点击exe文件进行安装。选择默认位置进行安装,点击OK等待即可。在安装过程中需要注意的是选择自定义安装选项:

全部勾选相关配置:

重启电脑之后在命令提示符中输入nvcc -V命令查看CUDA是否安装成功:

显示相关信息证明CUDA安装成功。

安装cuDNN

cuDNN下载链接

下载之前需要注册登录NVIDIA开发者计划。下面以cuDNN 8.1.0为例进行下载安装。

下载完成之后解压得到cuda文件夹。打开该文件夹可以看到有bin、include、lib三个文件夹。找到之前CUDA 11.2.0安装路径并打开该文件夹,可以找到与之对应的三个文件夹。将cudnn中的三个文件夹复制到cuda对应的文件夹当中。

配置环境变量。右击此电脑然后点击属性,然后点击高级系统设置。点击环境变量,在系统环境变量中找到path环境变量,点击进入。将以下内容添加到path环境变量当中:

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\libnvvp
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\lib
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include

一般前面两个环境变量在安装CUDA时已经自动配置好,我们只需要将后面两个添加进去即可。不同版本的cuDNN修改版本号即可。

最后可以在path中看到这四个位置证明环境变量配置成功。

验证cuDNN是否安装成功。打开终端命令提示符(win+r输入cmd)。进入到CUDA文件路径:

cd C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\extras\demo_suite

执行:deviceQuery.exe,出现如下效果图:

继续执行:bandwidthTest.exe,出现如下效果图:

最后cuDNN安装成功。

验证TensorFlow可用GPU

安装python3.9.0

python3.9.0下载链接

点击链接下载安装即可,安装完成之后在命令提示符输入:python 可查看当前python版本

输入:exit()退出python编译环境

安装tensorflow-gpu 2.6.0

在命令提示符输入:pip install tensorflow-gpu 2.6.0等待安装完成即可

若出现什么问题可在评论区留言

最后在终端输入:pip list可查看到安装的tensorflow-gpu 2.6.0

验证可用GPU

可在终端进入python编译环境或其他编译器中输入以下代码验证可用GPU

import tensorflow as tf
print("Num GPUs Available: ", len(tf.config.experimental.list_physical_devices('GPU')))

只要输出结果>0,证明存在可用gpu

代码测试

在编辑器中创建test_model.py文件,输入以下代码可显示GPU加速效果

import tensorflow as tf
# 列出可用的 GPU 设备
print(tf.config.list_physical_devices('GPU'))
# 设置 TensorFlow 使用 GPU 进行计算
gpu_devices = tf.config.list_physical_devices('GPU')
if gpu_devices:
    for device in gpu_devices:
        tf.config.experimental.set_memory_growth(device, True)
# 加载数据集
mnist = tf.keras.datasets.mnist
(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0
# 定义模型
model = tf.keras.models.Sequential([
    tf.keras.layers.Flatten(input_shape=(28, 28)),
    tf.keras.layers.Dense(128, activation='relu'),
    tf.keras.layers.Dropout(0.2),
    tf.keras.layers.Dense(10)
])
# 编译模型
loss_fn = tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True)
model.compile(optimizer='adam', loss=loss_fn, metrics=['accuracy'])
# 训练模型
model.fit(x_train, y_train, epochs=5)
# 评估模型
model.evaluate(x_test, y_test, verbose=2)

运行结果:

总结

在安装过程最重要的是版本兼容性问题,大家可以查看官方文档。最后,大家如果有什么问题欢迎在评论区留言,我都会回复大家,帮助大家解决问题

本文原文来自CSDN

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号