You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

TensorFlow安装报错排查:无法找到cudart64_90.dll问题分析

解决TensorFlow导入时找不到cudart64_90.dll的问题

从你的报错栈信息来看,核心问题非常明确:你当前安装的TensorFlow版本依赖CUDA 9.0,但系统找不到对应的cudart64_90.dll文件,且该文件所在路径未被添加到系统%PATH%环境变量中。下面给你一步步的排查和解决方案:

1. 确认CUDA版本匹配

首先检查你实际安装的CUDA版本是否为TensorFlow要求的9.0:

  • 打开命令行,输入nvcc --version,查看输出的CUDA版本号。如果不是9.0,建议卸载现有CUDA版本,重新安装CUDA 9.0。

2. 验证环境变量配置是否生效

即使安装了CUDA 9.0,也需要确保相关路径已添加到系统%PATH%

  • 找到CUDA 9.0的安装目录(默认路径一般是C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0
  • 确认以下两个路径已添加到系统PATH环境变量:
    • C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin
    • C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\libnvvp
  • 重要提示:修改环境变量后,必须关闭所有已打开的命令行窗口和Python Shell,重新启动才能让新配置生效

3. 检查DLL文件是否存在

  • 导航到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin目录,确认cudart64_90.dll文件是否存在。如果不存在,说明CUDA 9.0安装不完整,需要重新运行安装程序,选择「自定义安装」确保所有核心组件被正确安装。

4. 可选:更换兼容的TensorFlow版本

如果你不想切换到CUDA 9.0,也可以安装与你现有CUDA版本匹配的TensorFlow版本,比如:

  • CUDA 10.0 对应 TensorFlow 1.13.x / 2.0.x
  • CUDA 11.0 对应 TensorFlow 2.4.x 及以上版本
    你可以通过命令pip install tensorflow==<对应版本号>来安装兼容版本。

附你提供的报错栈信息:

>>> import tensorflow as tf
Traceback (most recent call last):
  File "C:\Users\Troy\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\python\platform\self_check.py", line 75, in preload_check
    ctypes.WinDLL(build_info.cudart_dll_name)
  File"C:\Users\Troy\AppData\Local\Programs\Python\Python36\lib\ctypes\__init__.py", line 348, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] 找不到指定的模块

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\Troy\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\__init__.py", line 24, in <module>
    from tensorflow.python import pywrap_tensorflow # pylint: disable=unused-import
  File "C:\Users\Troy\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\python\__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "C:\Users\Troy\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 30, in <module>
    self_check.preload_check()
  File "C:\Users\Troy\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\python\platform\self_check.py", line 82, in preload_check
    % (build_info.cudart_dll_name, build_info.cuda_version_number))
ImportError: Could not find 'cudart64_90.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Download and install CUDA 9.0 from this URL: https://developer.nvidia.com/cuda-toolkit

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

火山引擎 最新活动