【问题标题】:Tensorflow install on Windows ErrorTensorFlow 在 Windows 上安装错误
【发布时间】:2017-04-14 22:02:05
【问题描述】:

Tensorflow 现已在 Windows 上可用:

 https://developers.googleblog.com/2016/11/tensorflow-0-12-adds-support-for-windows.html

我使用了 pip install tensorflow。

我尝试运行介绍代码:

 https://www.tensorflow.org/versions/r0.12/get_started/index.html

我收到此错误:

C:\Python\Python35-32\python.exe "C:/tensorflow_tutorial.py"
Traceback (most recent call last):
  File "C:\Python\Python35-32\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 18, in swig_import_helper
return importlib.import_module(mname)
  File "C:\Python\Python35-32\lib\importlib\__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
   File "<frozen importlib._bootstrap>", line 986, in _gcd_import
   File "<frozen importlib._bootstrap>", line 969, in _find_and_load
   File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
   File "<frozen importlib._bootstrap>", line 666, in _load_unlocked
   File "<frozen importlib._bootstrap>", line 577, in module_from_spec
   File "<frozen importlib._bootstrap_external>", line 903, in create_module
   File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
 ImportError: DLL load failed: %1 is not a valid Win32 application.

这个网站有一些关于缺少的 DLL 的建议,但任何人都认为是好的:

https://github.com/tensorflow/tensorflow/issues/5949

更新:我切换到 x64 我收到此错误:

I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:119] Couldn't open CUDA library cublas64_80.dll
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_blas.cc:2294] Unable to load cuBLAS DSO.
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:119] Couldn't open CUDA library cudnn64_5.dll
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_dnn.cc:3459] Unable to load cuDNN DSO
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:119] Couldn't open CUDA library cufft64_80.dll
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_fft.cc:344] Unable to load cuFFT DSO.
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:119] Couldn't open CUDA library nvcuda.dll
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_diagnostics.cc:165] hostname: ����

更新2:

我安装了 nvidia cuda 文件

 https://developer.nvidia.com/cuda-downloads

我收到这些错误:

I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:128] successfully opened CUDA library cublas64_80.dll locally
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:119] Couldn't open CUDA library cudnn64_5.dll
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_dnn.cc:3459] Unable to load cuDNN DSO
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:128] successfully opened CUDA library cufft64_80.dll locally
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:119] Couldn't open CUDA library nvcuda.dll
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\cuda\cuda_diagnostics.cc:165] hostname: �٩��

更新3:

我从 NVIDIA 注册并下载了 cudnn 包

 https://developer.nvidia.com/cudnn

移动了文件位置

C:\Desktop\cudnn-8.0-windows10-x64-v5.1.zip\cuda\bin\cudnn64_5.dll to C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin\cudnn64_5.dll

仍然出现此错误:

 I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:119] Couldn't open CUDA library nvcuda.dll

更新 4:

将nvcuda.dll下载到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin

这解决了我的问题。

【问题讨论】:

  • 我尝试下载 nvcuda.dll 无法解决。你能解释一下你是从哪里下载的以及你采取了哪些进一步的步骤吗?

标签: windows-installer tensorflow python-3.5


【解决方案1】:

如果您安装的是 GPU 版本,请确保您的系统上有以下内容:

  • CUDA® 工具包 9.0。有关详细信息,请参阅 NVIDIA 的文档 将相关的 Cuda 路径名附加到 %PATH% 环境 变量,如 NVIDIA 文档中所述。
  • 与 CUDA Toolkit 9.0 关联的 NVIDIA 驱动程序。
  • cuDNN v7.0。有关详细信息,请参阅 NVIDIA 的文档。请注意,cuDNN 通常安装在与其他 CUDA 不同的位置 DLL。确保添加安装 cuDNN 的目录 DLL 到您的 %PATH% 环境变量。
  • 具有 CUDA 计算能力 3.0 或更高版本的 GPU 卡,用于构建 我们的二进制文件的源和 3.5 或更高版本。请参阅 NVIDIA 文档 查看支持的 GPU 卡列表。

【讨论】:

    【解决方案2】:

    你可以在"cuda\bin"中找到cudnn64_5.dll文件[这是cudnn-8.0-windows7-x64-v5.1_4 zip解压文件夹]。然后将上面的文件复制到 "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin"。 这适用于 Python 3.5 位 64 版本和 Windows 7 位 64 环境

    【讨论】:

      【解决方案3】:

      问题不在于平台 (amd64),而在于 GPU 驱动程序。您需要安装在 CPU 上运行的软件包或使用已安装的 GPU 软件包,但还要安装 CUDA 驱动程序。

      【讨论】:

        【解决方案4】:

        从您的 Python 解释器 (C:\Python\Python35-32) 的路径来看,您似乎使用的是 32 位版本的 Python 3.5。官方 TensorFlow 包仅适用于 64 位架构 (x64/amd64),因此您有两种选择:

        1. 安装 Python 3.5 的 64-bit version(来自 Python.org 或 Anaconda),

        2. 自己为 32 位 Python 3.5 编译 PIP 包。您或许可以使用实验性 CMake 构建来执行此操作(有关详细信息,请参阅 here),但这不是受支持或经过测试的配置。

        (请注意,我不确定您是如何在 32 位版本的 Python 上安装该软件包的,因为当我尝试这样做时,我收到一条错误消息:“此平台上不支持轮子。”)

        【讨论】:

          猜你喜欢
          • 2017-07-17
          • 2017-07-20
          • 1970-01-01
          • 2018-04-10
          • 2017-08-21
          • 2017-09-29
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多