目录
[1. 项目背景](#1. 项目背景)
[2. 系统与软件版本](#2. 系统与软件版本)
[2.1 操作系统与硬件](#2.1 操作系统与硬件)
[2.2 软件版本](#2.2 软件版本)
[3. 环境配置步骤](#3. 环境配置步骤)
[3.1 安装 Anaconda](#3.1 安装 Anaconda)
[3.2 创建虚拟环境](#3.2 创建虚拟环境)
[3.3 安装 CUDA 和 cuDNN](#3.3 安装 CUDA 和 cuDNN)
[3.3.1 安装 CUDA 11.8](#3.3.1 安装 CUDA 11.8)
[3.3.2 安装 cuDNN 8.6](#3.3.2 安装 cuDNN 8.6)
[3.3.3 验证 CUDA 和 cuDNN 安装](#3.3.3 验证 CUDA 和 cuDNN 安装)
[3.4 安装 TensorFlow](#3.4 安装 TensorFlow)
[3.4.1 安装 TensorFlow 2.10.0](#3.4.1 安装 TensorFlow 2.10.0)
[3.5 安装 PyTorch](#3.5 安装 PyTorch)
[3.5.1 安装带有 CUDA 支持的 PyTorch 2.4.0](#3.5.1 安装带有 CUDA 支持的 PyTorch 2.4.0)
[3.6 性能测试](#3.6 性能测试)
[3.7 环境变量检查与设置](#3.7 环境变量检查与设置)
[4. 结论](#4. 结论)
1. 项目背景
本指南旨在帮助你在 Windows 11 上配置一个支持 GPU 加速的深度学习环境。我们将安装 CUDA 和 cuDNN(如果不需要GPU加速,就不用管CUDA 和 cuDNN),然后安装并验证 TensorFlow 和 PyTorch 的 GPU 加速支持。
2. 系统与软件版本
2.1 操作系统与硬件
操作系统: Windows 11 64-bit
GPU: NVIDIA GeForce GTX 1650
2.2 软件版本
Python 版本: 3.10.14
CUDA 版本: 11.8
cuDNN 版本: 8.6
TensorFlow 版本: 2.10.0
PyTorch 版本: 2.4.0
2.3对应版本
|---------------|-------------------|-------------|--------------|----------------|
| Python 版本 | TensorFlow 版本 | CUDA 版本 | cuDNN 版本 | PyTorch 版本 |
| 3.6 | 2.4.0 | 11 | 8 | 1.7.0 - 1.7.1 |
| 3.6 - 3.8 | 2.5.0 | 11.2 | 8.1 | 1.8.0 - 1.8.1 |
| 3.6 - 3.9 | 2.6.0 | 11.2 | 8.1 | 1.9.0 |
| 3.6 - 3.9 | 2.7.0 | 11.2 | 8.1 | 1.10.0 |
| 3.6 - 3.9 | 2.8.0 | 11.2 - 11.3 | 8.1 - 8.2 | 1.11.0 |
| 3.7 - 3.10 | 2.9.0 | 11.2 - 11.6 | 8.1 - 8.4 | 1.12.0 |
| 3.7 - 3.10 | 2.10.0 | 11.2 - 11.6 | 8.1 - 8.4 | 1.13.0 - 2.0.0 |
| 3.8 - 3.10 | 2.11.0 | 11.2 - 11.7 | 8.1 - 8.5 | 2.0.0 - 2.1.0 |
| 3.8 - 3.10 | 2.12.0 | 11.2 - 11.7 | 8.1 - 8.5 | 2.1.0 |
| 3.8 - 3.11 | 2.13.0 | 11.8 | 8.6 | 2.4.0 |
说明
- Python 版本:列出了不同的 Python 版本范围,与 TensorFlow 和 PyTorch 版本兼容。
- TensorFlow 版本:列出了与每个 Python 版本兼容的 TensorFlow 版本。
- CUDA 版本:列出了与 TensorFlow 版本兼容的 CUDA 版本。
- cuDNN 版本:列出了与 CUDA 版本兼容的 cuDNN 版本。
- PyTorch 版本:列出了与 Python 和 TensorFlow 版本兼容的 PyTorch 版本。
这张表格提供了一个清晰的版本兼容性指南,帮助你在配置深度学习环境时选择正确的版本组合。对应版本有时候可以也存在问题,需要你自己安装判断了。
3. 环境配置步骤
3.1 安装 Anaconda
详细的安装步骤:
下载 Anaconda:
访问 Anaconda 官网 并下载适合 Windows 64-bit 的版本。
安装 Anaconda:
运行下载的安装程序,按默认设置进行安装。
完成安装后,打开 Anaconda Prompt 以便于创建和管理虚拟环境。
3.2 创建虚拟环境
创建 Python 3.10 虚拟环境: 在 Anaconda Prompt 中,输入以下命令创建名为 py310 的虚拟环境:
conda create -n py310 python=3.10
激活虚拟环境: 激活新创建的虚拟环境:
conda activate py310
3.3 安装 CUDA 和 cuDNN
我的百度网盘提供,你也可以自行下载:
[链接: https://pan.baidu.com/s/1i0Gqnsv7p5Xx96v6aH5l4g?pwd=e85q 提取码: e85q 复制这段内容后打开百度网盘手机App,操作更方便哦
--来自百度网盘超级会员v6的分享](#链接: https://pan.baidu.com/s/1i0Gqnsv7p5Xx96v6aH5l4g?pwd=e85q 提取码: e85q 复制这段内容后打开百度网盘手机App,操作更方便哦 --来自百度网盘超级会员v6的分享)
3.3.1 安装 CUDA 11.8
下载 CUDA:
访问 CUDA 11.8 下载页面 并下载适合你系统的安装包。
安装 CUDA:
运行安装包,并按提示完成安装。
确保将 CUDA 工具添加到系统的 PATH 环境变量中。通常,安装程序会自动完成此步骤。
3.3.2 安装 cuDNN 8.6
下载 cuDNN:
访问 NVIDIA cuDNN 下载页面 并下载与 CUDA 11.8 兼容的 cuDNN 版本。
安装 cuDNN:
解压下载的 cuDNN 压缩包。
将 bin、include 和 lib 文件夹中的内容复制到 CUDA 安装目录(如 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8)的对应文件夹中。
3.3.3 验证 CUDA 和 cuDNN 安装
验证 CUDA 安装:
打开命令提示符或 Anaconda Prompt,输入以下命令检查 CUDA 编译器 nvcc 是否可用:
nvcc --version
预期输出:
运行以下命令,以确保 GPU 驱动程序和 CUDA 版本匹配,并显示当前 GPU 的状态:
nvidia-smi
预期输出应显示 GPU 型号、驱动版本以及 CUDA 版本。
验证 cuDNN 安装:
确保 cudnn64_8.dll 文件位于 CUDA 安装目录的 bin 文件夹中。你可以使用以下命令检查:
dir "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin\cudnn64_8.dll"
在 Python 解释器中运行以下代码,验证 cuDNN 库是否正确加载:
from ctypes import cdll
cdll.LoadLibrary('cudnn64_8.dll')
如果没有错误返回,表示 cuDNN 库已正确加载。
3.4 安装 TensorFlow
3.4.1 安装 TensorFlow 2.10.0
安装 TensorFlow: 在已激活的 py310 环境中,使用以下命令安装 TensorFlow:
pip install tensorflow==2.10.0
验证 TensorFlow 安装:
打开 Python 解释器,输入以下命令验证 TensorFlow 安装及其对 GPU 的支持:
import tensorflow as tf
print("Is built with CUDA:", tf.test.is_built_with_cuda()) # 检查 TensorFlow 是否支持 CUDA
print("Available GPUs:", tf.config.list_physical_devices('GPU')) # 列出所有检测到的 GPU 设备
预期输出:
3.5 安装 PyTorch
3.5.1 安装带有 CUDA 支持的 PyTorch 2.4.0
安装 PyTorch: 在已激活的 py310 环境中,使用以下命令安装 PyTorch:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
验证 PyTorch 安装:
打开 Python 解释器,输入以下命令验证 PyTorch 安装及其对 GPU 的支持:
import torch
print(torch.version) # 显示 PyTorch 版本
print(torch.cuda.is_available()) # 检查 CUDA 是否可用
预期输出:
3. 6 性能测试
为了验证环境的配置,我们进行了简单的矩阵乘法测试,以确认 GPU 的加速效果。
TensorFlow 性能测试: 在 Python 解释器中运行以下代码:
import tensorflow as tf
import timeit
创建一个大的矩阵乘法任务
def matmul():
with tf.device('/GPU:0'): # 强制使用 GPU
a = tf.random.normal([10000, 10000])
b = tf.random.normal([10000, 10000])
c = tf.matmul(a, b)
return c
测量时间
time = timeit.timeit(matmul, number=10)
print(f"Matrix multiplication took {time} seconds")
预期输出:
Matrix multiplication took 0.6961112999997567 seconds
3. 7 环境变量检查与设置
上面那些都可以就可以啦,这个就不用管了。
确保系统的环境变量正确配置,以支持 CUDA 和 cuDNN:
检查 PATH 环境变量:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\libnvvp
检查 CUDA_HOME 环境变量:
设置为 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8
4. 结论
通过以上步骤,我们成功配置了一个在 Windows 11 上运行的深度学习环境。该环境能够利用 NVIDIA GeForce GTX 1650 GPU 进行加速,并通过 TensorFlow 和 PyTorch 进行模型训练和推理。性能测试表明,环境配置合理,能够显著提升计算效率。