You need to enable JavaScript to run this app. Anaconda环境PyTorch访问GPU报CUDA驱动初始化失败运行时错误
优惠活动
大模型
产品
解决方案
定价
更多

Anaconda环境PyTorch访问GPU报CUDA驱动初始化失败运行时错误

Anaconda环境PyTorch CUDA初始化失败排查指南

1. 核对驱动与PyTorch的CUDA版本匹配关系

首先明确:nvidia-smi 输出的右上角CUDA版本是当前显卡驱动支持的最高CUDA运行时版本,不是你Anaconda环境内安装的CUDA工具链/PyTorch绑定的CUDA版本。

  • 先执行 nvidia-smi ,查看输出的CUDA Version数值,确保该数值大于等于你PyTorch绑定的CUDA版本(你当前环境绑定的是11.1.1)。比如如果nvidia-smi显示的最高CUDA版本是10.2,哪怕驱动运行正常,也无法支撑CUDA11.1版本的PyTorch调用。
  • 版本对应底线:PyTorch 1.8.1 绑定CUDA11.1.1时,Windows平台最低需要显卡驱动版本 >= 456.38,Linux平台最低需要驱动版本 >=455.23.0。如果驱动版本低于这个阈值,哪怕nvidia-smi能正常出结果,也会触发初始化失败。

2. 排查Anaconda环境的CUDA库路径冲突

系统层面如果之前手动安装过其他版本的CUDA工具链,会导致PyTorch优先加载全局路径下的旧版本CUDA库,和环境内的版本不匹配:

  • Windows环境下在激活后的Anaconda终端执行 where cudart64_*.dll,Linux环境下执行 ldconfig -p | grep libcudart,确认所有输出的CUDA库路径都属于当前激活的Anaconda环境目录,没有混入系统全局路径的旧版本文件。
  • 如果发现存在全局路径的旧库被优先加载,临时把系统环境变量里的全局CUDA相关路径从Path(Windows)/LD_LIBRARY_PATH(Linux)中移除,重启终端后再测试PyTorch的CUDA调用。

3. 检查PyTorch安装包的CUDA绑定正确性

部分安装源(尤其是国内镜像源)会在未匹配对应CUDA版本时,自动替换成纯CPU版的PyTorch包,哪怕你执行的是CUDA版本对应的安装指令:

  • 激活对应Anaconda环境,打开Python交互终端,执行以下代码验证:
import torch
print(torch.__version__)
print(torch.version.cuda)
print(torch.cuda.is_available())
  • 如果输出中torch.version.cuda为None、torch.cuda.is_available()返回False,说明当前安装的是CPU版本PyTorch,需要先卸载现有PyTorch,再按照PyTorch1.8.1对应CUDA11.1的安装指令重新安装。

4. 排查系统层面的调用拦截

  • Windows平台如果开启了内核隔离/内存完整性功能,会拦截CUDA驱动的用户态内存访问,哪怕nvidia-smi完全正常,也会触发CUDA初始化失败。需要在Windows安全中心的「设备安全性-内核隔离详情」中临时关闭内存完整性,重启电脑后再测试。
  • 多GPU服务器场景下,检查是否被设置了CUDA_VISIBLE_DEVICES环境变量,将所有可用GPU都屏蔽了。可以临时在终端执行 set CUDA_VISIBLE_DEVICES=0(Windows)/ export CUDA_VISIBLE_DEVICES=0(Linux)后,再测试PyTorch的CUDA调用。
  • 执行nvidia-smi查看GPU进程列表,确认没有残留的、未正常退出的Python进程独占GPU计算上下文,杀掉残留进程后再重试。

内容的提问来源于stack exchange,提问作者pranrss

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.27 05:24:03