tensorflow-gpu(1.12.0) + CUDA(9.0) + cudnn(7.4.2)+ win10 下的安装 + pycharm 配置

更高版本

对于更高版本的tensorflow应该按照 tensorflow官网中指定的软件版本号 进行安装,安装的大体流程是相似的。
2019.7.16,win10下安装的版本号如下:
tensorflow(1.14.0) + CUDA(10.0) + cudnn(7.6.0) + Microsoft Visual C++ 2019 Redistributable


主要参考 tensorflow官方文档

基本环境

显卡: GTX1050ti
操作系统:win10

预先安装的软件

0.软件列表

打开官网的如下链接:https://tensorflow.google.cn/install/gpu 即可看到需要预先安装的软件。

1.Microsoft Visual C++ 2015 Redistributable

在tensorflow指定的官网下载,安装即可。如果电脑中存在Microsoft Visual C++ 2017 Redistributable可以跳过这里的安装。

2. cuda的安装

到nvidia官网下载cuda9.0版本,这里下载的local版本版本选择的截图如下:

如果cuda安装过程中出现 “This graphics driver could not find compatible graphics hardware”
这是因为cuda内部的显卡驱动比电脑自身的显卡驱动版本低,可以跳过警告,继续安装。

3.cuDnn的安装

这里的下载需要注册nvidia账号,我安装时的版本选择如下,下载后的到一个.zip压缩文件。

官方文档的安装过程

1.python3的安装:(Install the Python development environment on your system)

tensorflow官网显示只支持python3.4 3.5 3.6 所以需要自行安装满足要求的pyhton3版本,可以下载如下图所示的版本,形化安装比较方便,而且卸载也比较方便,只需要再次运行安装程序即可完成卸载。安装时可以将安装路径添加到系统变量path也可以安装完成后,手动添加。安装路径最好不要在C:Program Files或C:Program Files(X86)路径下,因为安装路径含有空格有可能会造成一些问题。

官方文档中出现的python3 也就是python 只需要把python安装目录下的python.exe文件改为python3.exe即可。检测相应的软件是否存在,不存在的话有可能是没有添加到系统变量(添加到系统变量即可),如果没有安装点击相应的使用pip也很好安装 例如安装virtualenv 执行如下命令:pip install virtualenv

3.虚拟环境的创建(Create a virtual environment )(这个步骤可以省略,我是省略该步骤,直接安装到系统环境里面):

4.tensorflow的安装(Install the TensorFlow pip package)

1.首先执行cmd命令如下:pip3 install --user --upgrade tensorflow-gpu
安装GPU版本tensorflow,需要注意的是,如果尽量安装tensorflow1.12.x 版本,更高的版本可能与cuda9.0不兼容,可以使用pip指定版本号,或者在官网指定的下载地址,下载对应的 .whl然后进行安装。
2.配置环境变量
一定要通过 "此电脑 右键->属性->高级系统设置->环境变量->系统变量->path"的方式设置,否则会出现(我之前cudnn的环境变量设置方式一直是官方文档中提到的命令行方式,错误信息如下):

Traceback (most recent call last):
  File "C:PythonPython36libsite-packages	ensorflowpythonpywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "C:PythonPython36libsite-packages	ensorflowpythonpywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "C:PythonPython36libsite-packages	ensorflowpythonpywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "C:PythonPython36libimp.py", line 243, in load_module
    return load_dynamic(name, filename, file)
  File "C:PythonPython36libimp.py", line 343, in load_dynamic
    return _load(spec)
ImportError: DLL load failed: 找不到指定的模块。
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "C:PythonPython36libsite-packages	ensorflow\__init__.py", line 24, in <module>
    from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
  File "C:PythonPython36libsite-packages	ensorflowpython\__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "C:PythonPython36libsite-packages	ensorflowpythonpywrap_tensorflow.py", line 74, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "C:PythonPython36libsite-packages	ensorflowpythonpywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "C:PythonPython36libsite-packages	ensorflowpythonpywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "C:PythonPython36libsite-packages	ensorflowpythonpywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "C:PythonPython36libimp.py", line 243, in load_module
    return load_dynamic(name, filename, file)
  File "C:PythonPython36libimp.py", line 343, in load_dynamic
    return _load(spec)
ImportError: DLL load failed: 找不到指定的模块。

正确的方式也即是在path路径下 添加CUDA9.0的安装路径:
C:Program FilesNVIDIA GPU Computing ToolkitCUDAv9.0in;
C:Program FilesNVIDIA GPU Computing ToolkitCUDAv9.0extrasCUPTIlibx64;
添加CUDNN的路径如下(根据个人解压路径而定):
C: oolscudain;
特别注意(因为这个原因,自己查了很多资料)在命令行行中执行如下命令 只是临时修改,关闭命令行后就会失效:

SET PATH=C:Program FilesNVIDIA GPU Computing ToolkitCUDAv9.0in;%PATH%
SET PATH=C:Program FilesNVIDIA GPU Computing ToolkitCUDAv9.0extrasCUPTIlibx64;%PATH%
SET PATH=C:	oolscudain;%PATH%

5.pycharm下的配置

只要将 project interpreter设置为与安装tensorflow对应的python.exe就行。

原文地址:https://www.cnblogs.com/lif323/p/10131591.html