当前位置: 首页 > 知识库问答 >
问题:

Tensorflow无法识别cudart64_101.dll

卜弘文
2023-03-14

我在路径中有一个 DLL 文件:C:\程序文件\NVIDIA GPU 计算工具包\CUDA\v10.1\bin\cudart64_101.dll,但张量流似乎无法识别它:

2020-03-11 14:39:19.815880: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'cudart64_101.dll'; dlerror: cudart64_101.dll not found

我确保PATH变量包含DLL的路径:

>>> l = os.environ['PATH'].split(';')
>>> for s in l:
...     print(s)
...
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin

奇怪的是,如果我将它手动包含在ctype中,它就会成功加载:

>>> import ctypes
>>> hllDll = ctypes.WinDLL("C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v10.1\\bin\\cudart64_101.dll")
>>> import tensorflow as tf
2020-03-11 15:05:26.907300: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_101.dll

这是为什么呢?我该怎么修?

共有1个答案

年烈
2023-03-14

在我的案例中,问题出在python是从Windows Store安装的!

参见@smreichling对tensorflow GitHub的评论(第36111期):

问题在于我安装的python版本是微软商店的版本,而不是 python.org 的版本。事实证明,从微软商店安装的应用是沙盒化的。Windows 非常严格地限制了它们可以从中加载 DLL 的位置。限制包括:Windows 不会在 PATH env 变量中的目录中搜索 DLL。因此,应用商店蟒蛇将永远无法以这种方式找到CUDA DLL。

所以我安装了一个可以从下载的https://www.python.org.

 类似资料:
  • TensorFlow包含图像识别的特殊功能,这些图像存储在特定文件夹中。出于安全目的,经常要识别相同的图像,这个逻辑很容易实现。 图像识别代码实现的文件夹结构如下所示 - dataset_image 文件夹中包含需要加载的相关图像。这里将专注于图像识别,其中定义了徽标。加载“load_data.py”脚本,它记录各种图像识别模块。 图像的训练用于将可识别的图案存储在指定的文件夹中。 上面的代码行生

  • 我正在使用卷积神经网络(CNN)对30种不同的水果进行图像检测。我目前拥有的数据集由“训练”和“测试”文件夹组成,每个文件夹都有30个不同类的子目录。 “train”文件夹共有671个jpg文件,“test”文件夹共有300个jpg文件。 我编写的实现图像检测的Python代码如下- 当我尝试执行此代码时,我得到以下消息- 使用TensorFlow后端。找到了属于30个类别的671张图片。找到了3

  • 问题内容: 我刚刚通过安装了Tensorflow的最新版本,并且每当我运行一个程序时,都会收到日志消息: W tensorflow / stream_executor / platform / default / dso_loader.cc:55]无法加载动态库’cudart64_101.dll’;dlerror:找不到cudart64_101.dll 这不好吗?如何解决错误? 问题答案: 这是怎

  • 我已经安装了GPU NVIDIA GeForce GT 740M(计算能力3.0)和以下版本的CUDA、cuDNN和tensorflow。 nvcc-V cat/usr/local/cuda/include/cudnn。h| grep CUDNN|u专业-A 2 pip3显示tensorflow gpu pip3显示tensorflow 但是,当我用print(device_lib.list_lo

  • 我有以下序列