如何在Jupyter Notebook中启用GPU?已按步骤配置仍未检测到
Jupyter Notebook中TensorFlow GPU检测失败的解决方法
问题背景
硬件配置:Windows 11系统,GeForce GTX 1660 SUPER显卡
已执行操作:
- 安装NVIDIA Studio驱动(版本531.61 - WHQL)
- 安装NVIDIA Toolkit-12.x
- 安装cuDNN 12
- 解压cuDNN并将lib、include、bin文件夹复制到CUDA目录
- 添加相关路径到系统环境变量
- 卸载tensorflow-2.12.1,重新安装tensorflow 2.10.0和tensorflow-gpu 2.10
- 尝试用
tf.config.list_physical_devices('GPU'))>0检测GPU,设置os.environ["CUDA_VISIBLE_DEVICES"] = "1"均无效
核心问题与解决步骤
1. 修复CUDA与TensorFlow的版本兼容性
TensorFlow 2.10仅支持CUDA 11.2,你安装的CUDA 12.x版本不兼容,这是无法检测GPU的核心原因。需执行以下操作:
- 卸载当前的CUDA 12.x和cuDNN 12
- 下载安装CUDA Toolkit 11.2
- 下载对应版本的cuDNN 8.1.x,解压后将lib、include、bin文件夹复制到CUDA 11.2的安装目录(默认路径:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2)
2. 清理并配置环境变量
- 删除系统环境变量中与CUDA 12.x相关的所有条目(包括
CUDA_PATH、PATH中的...\CUDA\v12.x\bin、...\CUDA\v12.x\libnvvp等路径) - 添加CUDA 11.2的路径到环境变量:
- 新建系统变量
CUDA_PATH,值为C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2 - 在
PATH中添加:%CUDA_PATH%\bin%CUDA_PATH%\libnvvp
- 新建系统变量
3. 验证CUDA安装有效性
打开命令提示符,执行以下命令确认:
nvcc -V:输出应显示CUDA版本为11.2nvidia-smi:输出应显示GPU信息,且驱动版本531.61兼容CUDA 11.2
4. 修正TensorFlow安装
- 卸载tensorflow-gpu 2.10:
pip uninstall tensorflow-gpu - 仅保留tensorflow 2.10.0:TensorFlow 2.10及以后版本的标准包已包含GPU支持,无需单独安装tensorflow-gpu,避免版本冲突
5. 确认Jupyter Notebook的内核环境
在Notebook中运行以下代码,检查当前Python环境是否为安装TensorFlow的环境:
import sys print(sys.executable)
如果路径与安装TensorFlow的Python路径不一致,需将目标环境添加到Jupyter内核:
# 激活你的Python环境后执行 ipython kernel install --user --name=your_env_name
然后在Jupyter中切换到该内核运行代码。
6. 修正GPU检测代码与环境变量设置
- 检测代码存在语法错误,正确写法:
import tensorflow as tf print(len(tf.config.list_physical_devices('GPU')) > 0)
- 单GPU环境下,
CUDA_VISIBLE_DEVICES应设置为0(GPU索引从0开始):
import os os.environ["CUDA_VISIBLE_DEVICES"] = "0"
关于依赖包版本的问题
需要确保TensorFlow的依赖包版本匹配,建议使用TensorFlow官方推荐的版本组合。无需安装tensorflow-intel,该版本是针对CPU优化的,会与GPU版本的TensorFlow冲突,直接使用标准的tensorflow==2.10.0即可。
内容的提问来源于stack exchange,提问作者tooGood
相关产品推荐
相关产品推荐

