说明:文章只详细介绍Windows下、python3.x版本、Tensorflow-GPU的详细安装配置!

1、Tensorflow介绍


        TensorFlow 是一个采用数据流图(data flow graphs),用于数值计算 的开源软件库。


        TensorFlow 最初由Google大脑小组的研究员和工程师们开发出来,用于机器学习和深度神经网络方面的研究, 但这个系统的通用性使其也可广泛用于其他计算领域。



2、Tensorflow特性


        高度的灵活性:只要能够将计算表示成为一个数据流图,那么就可以使用TensorFlow。



        可移植性:TensorFlow支持CPU和GPU的运算,并且可以运行在台式机、服务器、手机移动端设备等等。



        自动求微分:TensorFlow内部实现了自动对于各种给定目标函数求导的方式。



        多种语言支持:Python、C++




3、Tensorflow安装



        要求:Python必须是64位,机器的显卡必须是NVIDIA的显卡。



        对于Python3.x,可以使用pip install tensorflow(安装CPU版本)和pip install tensorflow-gpu(安装GPU版本)



        对于Python2.7,只能通过源码编译来安装TensorFlow(Windows操作系统)




4、安装步骤

1)、“win + R”  输入 cmd 进入命令行控制

2)、在python3.x的安装前提下,输入



pip install tensorflow-gpu==1.15.0(以1.15.0为例,具体版本选择参照下图)



        进行tensorflow的安装




        tensorflow的版本选择和python的版本具有关联性,可以在命令行下输入“python”查看相关信息,关联如下图:





python 支持 windows2008 r2 python 支持gpu型号_cudnn


 相关信息查看链接:https://tensorflow.google.cn/install/source#gpu

 3)、tensorflow安装完成后,在命令行输入" python --> import tensorflow "

python
import tensorflow

4)、根据提示进行下一步操作,如果没报错则表示成功,如果出现像下图所示(各种dll文件报错)则进一步操作


python 支持 windows2008 r2 python 支持gpu型号_cudnn_02


 5)、TensorFlow-GPU安装-CUDA以及cuDNN

· CUDA下载安装链接

· cuDNN下载安装链接 cuDNN下载时需要一个简单的注册

网址可能加载较慢,多刷新耐心等即可,附赠下载大礼包(CUDA10.0版本),包含: Visual Studio(community)、python3.7.0、cuda_10.0.130_411.31_win10 以及 cudnn-10.0-windows10-x64-v7.4.2.24 网盘下载链接 (提取码:f61r)(适用python3.3-3.7)


        在CUDA和cuDNN选择的时候也要根据自己的机器、python版本、以及tensorflow版本进行选择


        详细参见: 版本选择


① 选择CUDA版本,不知道NVIDIA显卡适配什么样的CUDA小伙伴看下面


        打开NVIDIA控制面板(打开方式有多种),点击左上角 帮助-->系统信息-->组件,找到NVCUDA.DLL 查看对应的CUDA适配版本


python 支持 windows2008 r2 python 支持gpu型号_cudnn_03


python 支持 windows2008 r2 python 支持gpu型号_cuda_04


② 然后去CUDA下载安装链接找到相应的版本下载,进行安装

python 支持 windows2008 r2 python 支持gpu型号_cuda_05

安装失败的问题,多半原因是因为Visual Studio(VS) Intergration无法安装导致,下面是简单处理方法

        · 如果电脑没有装 Visual Studio,先去装一个 。传送门:VS安装

        · 安装完成VS后,再次打开CUDA安装包,选择自定义安装模式,在选项中去掉Visual Studio(VS) Intergration勾选,进行安装

 

python 支持 windows2008 r2 python 支持gpu型号_深度学习_06

还需要安装对应版本的cuDNN下载安装链接

        将cuDNN的压缩包解压, 然后将压缩包中的三个文件夹全部放到CUDA对应的根目录下,根据环境变量找到对应的根目录:(默认)C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0;

        说明:在CUDA9.x版本以上是默认配置好环境变量的

        然后在命令行输入“nvidia-smi”

nvidia-smi

成功了!

python 支持 windows2008 r2 python 支持gpu型号_tensorflow_07

 6)、在命令行输入" python --> import tensorflow "测试,通过则成功。

    如果发现缺少某个dll的提示,一般情况下,按照以上步骤安装后,是不会出现tensorflow-gpu的版本和cuda、cudnn版本不兼容的问题,大概率也不是缺少这个文件,而是无法链接动态库的问题。操作如下:

  ① 在CUDA安装目录下,默认为:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin;查找缺少的某个.dll 文件,如果找不到点击这里下载相关dll文件,下载结束后放在上述目录里。

 自己能找到相应的文件,系统却仍然报找不到的错:

        将 “某个.dll ” 文件放入C盘的System32文件夹,解决(但是为外部动态链接,每次运行tensorflow程序会显示'sucessfully XXXX'语句,属于正常显示)


python 支持 windows2008 r2 python 支持gpu型号_cudnn_08


7)、到此,Tensorflow安装配置结束

        一般情况下,版本相匹配是不会出现错误的,如果在某些测试下发现,缺少更多的dll文件,可以参考这篇文章,希望对你有所帮助


因为无法链接动态库的问题采用上述方法解决的话,会看到很多诸如类似的提示:


        Successfully opened dynamic library cudart64_101.dll


        Successfully opened dynamic library cud64_100.dll


        Successfully opened dynamic library xxxx.dll


        此时可以采用os模块的解决,在import tensorflow as tf前面导入import os,示例如下:


import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'  # 不显示等级2以下的提示信息
import tensorflow as tf

        以上代码用于忽略级别 2 及以下的消息(级别 1 是提示,级别 2 是警告,级别 3 是错误)

        另外,出现Successfully opened dynamic library xxxxx.dll,虽然无伤大雅,但是每次程序运行import tensorflow as tf的时候总会等待一两秒去查找xxxxx.dll
        方法(仅供参考):将xxxxx.dll的路径添加到环境变量的Path中:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\bin\xxxxx.dll


 8)、运行tensorflow程序提示Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA


        大概意思是:你的CPU支持AVX扩展,但是你安装的TensorFlow版本无法编译使用



        如果你有一个GPU,你不应该关心AVX的支持,因为大多数昂贵的操作将被分派到一个GPU设备上(除非明确地设置)。在这种情况下,您可以简单地忽略此警告:
        import os
        os.environ[‘TF_CPP_MIN_LOG_LEVEL’] = ‘2’
 


        希望上述方法对你有所帮助!