【windows使用TensorFlow,GPU无法识别问题汇总,含TensorFlow完整安装过程】

文章目录

    • [踩坑1 Tensorflow找不到GPU:tensorflow 2.11.0版本开始,在windows上不再支持GPU](#踩坑1 Tensorflow找不到GPU:tensorflow 2.11.0版本开始,在windows上不再支持GPU)
    • [踩坑2 解决zlibwapi.dll缺失问题](#踩坑2 解决zlibwapi.dll缺失问题)
    • [3 完整下载过程:(除去踩坑1和踩坑2,无坑版本)](#3 完整下载过程:(除去踩坑1和踩坑2,无坑版本))
      • [因为windows只支持2.10.0,所以这里我们用2.10.0。但CUDA Toolkit: 11.8、cuDNN: 8.6按照此版本下载,完全可行。亲测无坑!!](#因为windows只支持2.10.0,所以这里我们用2.10.0。但CUDA Toolkit: 11.8、cuDNN: 8.6按照此版本下载,完全可行。亲测无坑!!)

踩坑1 Tensorflow找不到GPU:tensorflow 2.11.0版本开始,在windows上不再支持GPU

  • 因此如果使用的是windows系统,需要注意tensorflow版本为最高2.10.0
bash 复制代码
# 1. 完全卸载TensorFlow
pip uninstall tensorflow -y

# 2. 清理pip缓存(避免安装损坏文件)
pip cache purge

# 3. 重新安装TensorFlow 2.10.0(指定镜像源,确保完整安装)
pip install tensorflow==2.10.0

踩坑2 解决zlibwapi.dll缺失问题


将 zlibwapi.lib 文件放到 path/to/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.8/lib 下

将 zlibwapi.dll 文件放到 path/to/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.8/bin 下

ps:此文件夹可以在网上找到,亲测有效

3 完整下载过程:(除去踩坑1和踩坑2,无坑版本)

你现在用的是 TensorFlow 2.15.0,那我立刻给你匹配这个版本的 GPU 环境配置方案,避免版本不兼容的问题。

TensorFlow 2.15.0 对应的 GPU 依赖(官方标准)

TensorFlow 2.15.0 官方要求的依赖版本是:

CUDA Toolkit: 11.8

cuDNN: 8.6

NVIDIA 显卡驱动: ≥ 520.61.05

正确安装步骤(适配 TensorFlow 2.15.0)

因为windows只支持2.10.0,所以这里我们用2.10.0。但CUDA Toolkit: 11.8、cuDNN: 8.6按照此版本下载,完全可行。亲测无坑!!

  • 第一步:卸载错误的 CUDA 版本(如果已装 12.9)
    打开「控制面板 → 程序和功能」
    卸载所有包含「NVIDIA CUDA」的程序(比如「NVIDIA CUDA 12.9 Toolkit」)
    重启电脑
  • 第二步:安装 CUDA 11.8(适配 TF 2.15.0)
    下载 CUDA 11.8.0:https://developer.nvidia.com/cuda-11-8-0-download-archive
    选择:Windows → x86_64 → 10/11 → exe (local)
    安装时选「自定义安装」:
    取消勾选「NVIDIA GeForce Experience」「Display Driver」(保留现有显卡驱动,避免冲突)
    只勾选「CUDA → Runtime」(核心组件)
    安装路径默认即可(C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8)
  • 第三步:安装 cuDNN 8.6.0 for CUDA 11.8
    下载 cuDNN 8.6.0:https://developer.nvidia.com/rdp/cudnn-archive#version-860
    选择「cuDNN v8.6.0 (October 3rd, 2022), for CUDA 11.x」
    下载 Windows 版本(需登录 NVIDIA 账号,免费注册即可)
    解压下载的压缩包,得到bin、include、lib三个文件夹
    将这三个文件夹复制粘贴到 CUDA 11.8 的安装目录(C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8),覆盖同名文件夹(确认合并,不删除原有文件)
  • 第四步:配置环境变量(关键)
    手动添加以下路径到系统PATH(右键「此电脑 → 属性 → 高级系统设置 → 环境变量 → 系统变量 → PATH」):
bash 复制代码
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\lib\x64
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\include

重启电脑,让环境变量有效

环境变量测试命令如下(在cmd中打开)

bash 复制代码
# 检查PATH里是否有CUDA路径
echo %PATH% | findstr "CUDA"

# 检查cuDNN的dll文件
dir "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin\cudnn64_8.dll"


  • 第五步:重装 TensorFlow 2.15.0 GPU 版
bash 复制代码
conda activate fedrffi
pip uninstall tensorflow -y
pip install tensorflow==2.10.0

第六步:验证 GPU 是否识别

bash 复制代码
import os
import tensorflow as tf

# 强制启用GPU,关闭不必要的警告
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
os.environ['CUDA_VISIBLE_DEVICES'] = '0'
os.environ['TF_FORCE_GPU_ALLOW_GROWTH'] = 'true'

# 打印关键信息
print(f"TensorFlow 版本: {tf.__version__}")
print(f"CUDA 可用: {tf.test.is_built_with_cuda()}")
print(f"GPU 设备列表: {tf.config.list_physical_devices('GPU')}")

# 验证GPU是否能实际计算
if tf.config.list_physical_devices('GPU'):
    print("\n✅ GPU配置全部成功!开始测试GPU计算...")
    with tf.device('/GPU:0'):
        # 创建大矩阵测试GPU计算(能明显看到GPU利用率上升)
        a = tf.random.normal((5000, 5000))
        b = tf.random.normal((5000, 5000))
        c = tf.matmul(a, b)
    print(f"GPU计算完成!结果矩阵形状: {c.shape}")
    
    # 把这段配置加到你的main.py开头,即可用GPU训练LoRa模型
    print("\n✅ 现在运行你的main.py,就能使用GPU训练了!")
else:
    print("\n❌ 仍未识别GPU,仅需检查最后1点:")
    print("1. 你的显卡是否是NVIDIA(AMD/集成显卡不支持)")
    print("2. 显卡驱动版本是否≥520.61.05(更新驱动:https://www.nvidia.com/Download/index.aspx)")
相关推荐
jay神2 小时前
基于YOLOv8的木材表面缺陷检测系统
人工智能·深度学习·yolo·计算机视觉·毕业设计
远程修电脑→24169767752 小时前
三角洲行动弹窗提示CPU虚拟化未开启或被占用启动腾讯游戏时出现【ACE安全中心】虚拟化相关报错
windows
188_djh2 小时前
# 15_电脑版百度网盘每次登录都显示安全验证,很麻烦,一招解决
windows·app·百度网盘·百度网盘安全验证·baidudisk
交通上的硅基思维2 小时前
人工智能安全:风险、机制与治理框架研究
人工智能·安全·百度
郭涤生2 小时前
C++的函数是否可以做到完全覆盖Linux和windows的跨平台
linux·c++·windows
老百姓懂点AI2 小时前
[测试工程] 告别“玄学”评测:智能体来了(西南总部)基于AI agent指挥官的自动化Eval框架与AI调度官的回归测试
运维·人工智能·自动化
2501_948120152 小时前
基于量化感知训练的大语言模型压缩方法
人工智能·语言模型·自然语言处理
Code小翊2 小时前
Python 核心语法速查手册
windows
songyuc2 小时前
【Llava】load_pretrained_model() 说明
人工智能·深度学习