我正在尝试在Windows 10下在Python中获得Tensorflow GPU支持。
什么有效;
下载并安装 Python v3.7.3
pip3 install --ignore-installed --upgrade tensorflow
pip3 install --ignore-installed --upgrade scipy
从命令提示符运行 Python,然后键入导入张量流 工作正常,不返回任何错误 我可以在CPU上运行tensorflow Python程序(如果重要的话 https://github.com/cysmith/neural-style-tf)
什么不起作用;
我现在卸载 CPU 张量流并安装 GPU 张量流
pip3 uninstall tensorflow
pip3 install --ignore-installed --upgrade tensorflow-gpu
卸载和安装都完成,没有错误。
我下载并安装了 Cuda 工具包 9.0 和补丁。
我下载并提取 cuDNN 并将相关 DLL 复制到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0 下的文件夹中
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\extras\demo_suite\oceanFFT.exe 按预期运行,所以我现在假设 Cuda 安装正确
从命令提示符窗口运行 Python
类型导入张量流
失败并出现这些错误...
Python 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 22:22:05) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow
Traceback (most recent call last):
File "C:UsersUsernameAppDataLocalProgramsPythonPython37libsite-packagestensorflowpythonpywrap_tensorflow.py", line 58, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "C:UsersUsernameAppDataLocalProgramsPythonPython37libsite-packagestensorflowpythonpywrap_tensorflow_internal.py", line 28, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "C:UsersUsernameAppDataLocalProgramsPythonPython37libsite-packagestensorflowpythonpywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
File "C:UsersUsernameAppDataLocalProgramsPythonPython37libimp.py", line 242, in load_module
return load_dynamic(name, filename, file)
File "C:UsersUsernameAppDataLocalProgramsPythonPython37libimp.py", line 342, in load_dynamic
return _load(spec)
ImportError: DLL load failed: The specified module could not be found.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:UsersUsernameAppDataLocalProgramsPythonPython37libsite-packagestensorflow__init__.py", line 24, in <module>
from tensorflow.python import pywrap_tensorflow # pylint: disable=unused-import
File "C:UsersUsernameAppDataLocalProgramsPythonPython37libsite-packagestensorflowpython__init__.py", line 49, in <module>
from tensorflow.python import pywrap_tensorflow
File "C:UsersUsernameAppDataLocalProgramsPythonPython37libsite-packagestensorflowpythonpywrap_tensorflow.py", line 74, in <module>
raise ImportError(msg)
ImportError: Traceback (most recent call last):
File "C:UsersUsernameAppDataLocalProgramsPythonPython37libsite-packagestensorflowpythonpywrap_tensorflow.py", line 58, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "C:UsersUsernameAppDataLocalProgramsPythonPython37libsite-packagestensorflowpythonpywrap_tensorflow_internal.py", line 28, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "C:UsersUsernameAppDataLocalProgramsPythonPython37libsite-packagestensorflowpythonpywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
File "C:UsersUsernameAppDataLocalProgramsPythonPython37libimp.py", line 242, in load_module
return load_dynamic(name, filename, file)
File "C:UsersUsernameAppDataLocalProgramsPythonPython37libimp.py", line 342, in load_dynamic
return _load(spec)
ImportError: DLL load failed: The specified module could not be found.
Failed to load the native TensorFlow runtime.
See https://www.tensorflow.org/install/errors
for some common reasons and solutions. Include the entire stack trace
above this error message when asking for help.
>>>
路径在开头有 Cuda 条目,即
PATH=C:Program FilesNVIDIA GPU Computing ToolkitCUDAv9.0bin;C:Program FilesNVIDIA GPU Computing ToolkitCUDAv9.0libnvvp;
我尝试卸载 Cuda v9 并尝试了 v8 和最新的 v10。 同样的错误。
任何想法我需要做什么才能让 tensorflow GPU 在 Windows 10 中的 Python 下工作?
在看到一些帖子说不支持 v3.7 后,还尝试了较旧的 Python v3.6.8。
相同的错误
Python 3.6.8 (tags/v3.6.8:3c6b436a57, Dec 24 2018, 00:16:47) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow
Traceback (most recent call last):
File "C:UsersUsernameAppDataLocalProgramsPythonPython36libsite-packagestensorflowpythonpywrap_tensorflow.py", line 58, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "C:UsersUsernameAppDataLocalProgramsPythonPython36libsite-packagestensorflowpythonpywrap_tensorflow_internal.py", line 28, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "C:UsersUsernameAppDataLocalProgramsPythonPython36libsite-packagestensorflowpythonpywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
File "C:UsersUsernameAppDataLocalProgramsPythonPython36libimp.py", line 243, in load_module
return load_dynamic(name, filename, file)
File "C:UsersUsernameAppDataLocalProgramsPythonPython36libimp.py", line 343, in load_dynamic
return _load(spec)
ImportError: DLL load failed: The specified module could not be found.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:UsersUsernameAppDataLocalProgramsPythonPython36libsite-packagestensorflow__init__.py", line 24, in <module>
from tensorflow.python import pywrap_tensorflow # pylint: disable=unused-import
File "C:UsersUsernameAppDataLocalProgramsPythonPython36libsite-packagestensorflowpython__init__.py", line 49, in <module>
from tensorflow.python import pywrap_tensorflow
File "C:UsersUsernameAppDataLocalProgramsPythonPython36libsite-packagestensorflowpythonpywrap_tensorflow.py", line 74, in <module>
raise ImportError(msg)
ImportError: Traceback (most recent call last):
File "C:UsersUsernameAppDataLocalProgramsPythonPython36libsite-packagestensorflowpythonpywrap_tensorflow.py", line 58, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "C:UsersUsernameAppDataLocalProgramsPythonPython36libsite-packagestensorflowpythonpywrap_tensorflow_internal.py", line 28, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "C:UsersUsernameAppDataLocalProgramsPythonPython36libsite-packagestensorflowpythonpywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
File "C:UsersUsernameAppDataLocalProgramsPythonPython36libimp.py", line 243, in load_module
return load_dynamic(name, filename, file)
File "C:UsersUsernameAppDataLocalProgramsPythonPython36libimp.py", line 343, in load_dynamic
return _load(spec)
ImportError: DLL load failed: The specified module could not be found.
Failed to load the native TensorFlow runtime.
See https://www.tensorflow.org/install/errors
for some common reasons and solutions. Include the entire stack trace
above this error message when asking for help.
>>>
我也回到了Python v3.5.2,安装了tensorflow-gpu并得到了同样的错误......
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:18:55) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow
Traceback (most recent call last):
File "C:UsersUsernameAppDataLocalProgramsPythonPython35libsite-packagestensorflowpythonpywrap_tensorflow.py", line 58, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "C:UsersUsernameAppDataLocalProgramsPythonPython35libsite-packagestensorflowpythonpywrap_tensorflow_internal.py", line 28, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "C:UsersUsernameAppDataLocalProgramsPythonPython35libsite-packagestensorflowpythonpywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
File "C:UsersUsernameAppDataLocalProgramsPythonPython35libimp.py", line 242, in load_module
return load_dynamic(name, filename, file)
File "C:UsersUsernameAppDataLocalProgramsPythonPython35libimp.py", line 342, in load_dynamic
return _load(spec)
ImportError: DLL load failed: The specified module could not be found.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:UsersUsernameAppDataLocalProgramsPythonPython35libsite-packagestensorflow__init__.py", line 24, in <module>
from tensorflow.python import pywrap_tensorflow # pylint: disable=unused-import
File "C:UsersUsernameAppDataLocalProgramsPythonPython35libsite-packagestensorflowpython__init__.py", line 49, in <module>
from tensorflow.python import pywrap_tensorflow
File "C:UsersUsernameAppDataLocalProgramsPythonPython35libsite-packagestensorflowpythonpywrap_tensorflow.py", line 74, in <module>
raise ImportError(msg)
ImportError: Traceback (most recent call last):
File "C:UsersUsernameAppDataLocalProgramsPythonPython35libsite-packagestensorflowpythonpywrap_tensorflow.py", line 58, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "C:UsersUsernameAppDataLocalProgramsPythonPython35libsite-packagestensorflowpythonpywrap_tensorflow_internal.py", line 28, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "C:UsersUsernameAppDataLocalProgramsPythonPython35libsite-packagestensorflowpythonpywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
File "C:UsersUsernameAppDataLocalProgramsPythonPython35libimp.py", line 242, in load_module
return load_dynamic(name, filename, file)
File "C:UsersUsernameAppDataLocalProgramsPythonPython35libimp.py", line 342, in load_dynamic
return _load(spec)
ImportError: DLL load failed: The specified module could not be found.
Failed to load the native TensorFlow runtime.
See https://www.tensorflow.org/install/errors
for some common reasons and solutions. Include the entire stack trace
above this error message when asking for help.
>>>
因此,在我疯狂地尝试 Python、Cuda 和 cuDNN 的每个组合希望获得工作匹配之前,是否有任何实际步骤可以安装哪个版本以及完成此操作的顺序?
编辑:我需要/用于制作这项工作的版本是;
已安装的 Python v3.6.4
pip3 install --no-cache-dir --ignore-install --upgrade tensorflow-gpu==1.12.0
pip3 安装 --no-cache-dir --忽略-安装 --升级 scipy
pip3 安装 --no-cache-dir --忽略已安装 --升级 opencv_python-3.4.5-cp36-cp36m-win_amd64.whl
库达 9.0
cuDNN 需要"下载 cuDNN v7.2.1(2018 年 8 月 7 日),适用于 CUDA 9.2">
来自 Tensorflow 安装
视窗设置
请参阅上面列出的硬件要求和软件要求。 阅读适用于 Windows 的 CUDA® 安装指南。
确保安装的 NVIDIA 软件包与版本匹配 上面列出。特别是,TensorFlow 不会在没有 cuDNN64_7.dll文件。若要使用其他版本,请参阅 Windows 内部版本 来自源指南。
也许您没有指定的文件cuDNN64_7.dll
请检查该文件是否存在于 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin 中 其中 9.0 是 CUDA 的版本
实际上,我在Windows 10中可以使用此设置
- 蟒蛇 3.6.4
- 张量流 1.12.0
- 库达 9.0
编辑:一些研究我发现这与该问题有关
搜索 DLL:张量流安装错误
相关问题:
https://github.com/tensorflow/tensorflow/issues/22512
https://github.com/tensorflow/tensorflow/issues/22794
对于所有在Windows 10/Python 3.6.x/RTX20xx下遇到"DLL加载失败"问题的人。
CUDA 10.0(不是 10.1!)、cuDNN 7.5.0 的组合对我来说效果很好(截至 2019 年 4 月 12 日)。我也安装了Visual Studio 2015(但不确定是否需要)。
不要忘记将 cuDNN *.dll 文件的位置(它是 CUDA 目录中的/bin/
目录)添加到您的路径中。
如果您有 CUDA 10.1,只需卸载它,安装 10.0,将 cuDNN 文件添加到 10.0 目录,然后重新启动。
Tensorflow可以使用pip install tensorflow-gpu
安装