基本配置:Windows10家庭版+Anaconda虚拟环境Python3.6.8+Tensorflow-gpu-1.14.0+CUDA 10.0+cuDNN 7.4.2(1.13.0版本开始支持python3.7和CUDA 10、TensorRT 5.0)
![667419d43e3638613a542a4713376af1.png](https://i-blog.csdnimg.cn/blog_migrate/d5bd711986104172c14a35f26637b187.jpeg)
![cd79df7c13d71b028b0cd775675e12bf.png](https://i-blog.csdnimg.cn/blog_migrate/95064906aaa476dcda4ef8e081d32fb0.png)
一、安装 Visual C++ 生成工具 2015(本人平时不怎么使用vs所以采取简洁安装)
说明:官方安装教程显示也是支持其他版本的:
![ce3291039243f950172e05910a6be0df.png](https://i-blog.csdnimg.cn/blog_migrate/2dee53a7b37c2836bdaec70574d95f8a.jpeg)
tensorflow中文官网教程就是以VS2015参照的,而且还给出了经过测试的各版本组合(目前暂未给出win10+cuda10,本人想尝试安装比较新的版本)。
![40bd62a4e84a9ccb363f2405f667459c.png](https://i-blog.csdnimg.cn/blog_migrate/7c008c6a0b0c1cfabd52e29468c1b4f3.jpeg)
首先下载Visual C++ 生成工具 2015。此软件包随附在 Visual Studio 2015 中,但可以单独安装。进入Visual Studio 下载页面,选择“可再发行组件和生成工具”,下载并安装:
Microsoft Visual C++ 2015 Redistributable 更新 3,Microsoft 生成工具 2015 更新 3。
![597b607b530b1593bfa9204e2f83a893.png](https://i-blog.csdnimg.cn/blog_migrate/370b31f3fd91473d261038211accd7f0.jpeg)
![c5cfc08de885f43441a847e40ad4d688.png](https://i-blog.csdnimg.cn/blog_migrate/3aaafc62ebb4016bb8156eb3afc47cb1.png)
二、安装CUDA 10.0
首先打开NVIDIA控制面板查看自己的显卡和驱动支持多少版本的CUDA,为了安装最新版本的CUDA我把显卡驱动升级到最新了,升级前可以找个软件备份下原驱动。
![58870c5010abf4cdf7a965f475882e4b.png](https://i-blog.csdnimg.cn/blog_migrate/7b038db6c5d8b0cd9a4dc3993cb96c4c.jpeg)
![2fb06e289ac0c562868eb6f3ee37c0b2.png](https://i-blog.csdnimg.cn/blog_migrate/092c178d8a03d065c443a51fa5b522c5.jpeg)
![ec9c6713bedbc4be331632bf3ca22f8a.png](https://i-blog.csdnimg.cn/blog_migrate/a75407d37e889089adfd31963981886c.jpeg)
进入官网下载界面下载相应版本cuda。
![40009b133ec6237c52db3279bb4286ba.png](https://i-blog.csdnimg.cn/blog_migrate/cb47b90404f81d80b33b193e696e4dda.jpeg)
![f8d9dba7aad3a8c528fe21e83b7044b1.png](https://i-blog.csdnimg.cn/blog_migrate/c92513f8ce47e56965d2dec258220ac7.jpeg)
下载后的安装步骤参考官方教程。
![ca59be151f8923131be0b65e25436e12.png](https://i-blog.csdnimg.cn/blog_migrate/dc570d8f499d294b9c1f0f48b2107f8d.jpeg)
![0f9392ad31bd4054ba2cb3e1d00dd462.png](https://i-blog.csdnimg.cn/blog_migrate/7dec96b4521076eb543d336e6f3fe29b.jpeg)
![9f6b5443f9eeed1a29de9c76d76bcd97.png](https://i-blog.csdnimg.cn/blog_migrate/4a89cb14b5248a831a1ac15a4ee1e312.jpeg)
安装完成后简单检查一下cuda的版本:nvcc -V(更为完善的检查文末会提到)。
![d20c06ceeba9993d4748b415a4998d41.png](https://i-blog.csdnimg.cn/blog_migrate/5cf3ba8c38f6adcd53a94002c5536a39.jpeg)
再看一下环境变量是否配置成功,这个应该是在安装过程中自动添加了。右键“此电脑”-“属性”-“高级系统设置”-“高级”-“环境变量”。
![aedcf8c02d318d5193a90df92fc7137c.png](https://i-blog.csdnimg.cn/blog_migrate/bd06575744ccd2ec50a3a137f3ee209f.jpeg)
![842a4ea6acb299a191faa33ea5f1dbda.png](https://i-blog.csdnimg.cn/blog_migrate/1e4fcc9c67b4cd758457fb5546317f4a.jpeg)
![3acd3e0074e5d093fe72e03c1481131a.png](https://i-blog.csdnimg.cn/blog_migrate/38b295d76700791177ea6ecbc8a332c7.jpeg)
三、安装cuDNN7.4.2
进入官网下载界面下载对应cuda10.0的cudnn7.4.2(这里选择v7.4.2版本是考虑到下一个发布的7.5.0版本开始支持cuda10.1了,为规避安装失败的风险)。
![1a9a86e458c650d378b1d2f9549afa4f.png](https://i-blog.csdnimg.cn/blog_migrate/1b23cc324857d13b773ad9a8a1adc8a6.jpeg)
![89fe75eac7513ab7d996703181de40ff.png](https://i-blog.csdnimg.cn/blog_migrate/28ccf851581aa476ba8523e74b2834c0.jpeg)
下载后的安装步骤参考官方教程。
解压cudnn7.4.2得到cuda文件夹,然后复制下面三个文件到 CUDA Toolkit 目录(CUDA我是默认目录安装的) 。
复制<cuDNN路径下>cudabincudnn64_7.dll 到 C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.0bin.
复制 <cuDNN路径下>cuda includecudnn.h 到 C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.0include.
复制 <cuDNN路径下>cudalibx64cudnn.lib 到 C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.0libx64.
![6dfa291f636c9e1de664c9c0ed7707ad.png](https://i-blog.csdnimg.cn/blog_migrate/b5c50b405a395e7794503874a8923c26.jpeg)
按照官方说明还需对 cudnn.lib 进行链接,我没链接也能正常使用了(其实我不会哈哈)。
四、安装tensorflow-gpu并测试
pip install tensorflow-gpu
![e015355775292ba6168fbc6c8dfc24b7.png](https://i-blog.csdnimg.cn/blog_migrate/ecf5e61c4c82731ac5f66b332b503f89.jpeg)
![db37b071307505f89ba691ebd15461cf.png](https://i-blog.csdnimg.cn/blog_migrate/7e913606cf8c08ec9bf69f2a85652361.jpeg)
简单测试tensorflow-gpu
import
![765d6959b8b8341a2643728d54fb8a81.png](https://i-blog.csdnimg.cn/blog_migrate/49e4b3f450a5ce2ec7b4a0b343274090.jpeg)
五、补充说明踩过的坑
其实一开始下载的是CUDA最新版cuda_10.1.168_425.25_win10.exe,然后搭配的对应于cuda10.1的cuDNN最新版cudnn7.6.2,两者都已成功安装并通过比“nvcc -V”更进一步的测试:用VS2015打开C:ProgramDataNVIDIA CorporationCUDA Samplesv10.1(默认的安装目录)下的Samples_vs2015.sln文件,找到1_Utilities文件右键点击生成,生成完毕后去C:ProgramDataNVIDIA CorporationCUDA Samplesv10.1binwin64Release文件下cmd分别运行deviceQuery(测试能否找到显卡并且驱动是否正确)和bandwidthTest(测试CUDA版本及其它必要的测试),如下图:
![380c6c9091eea5b45efab47fe21c53d1.png](https://i-blog.csdnimg.cn/blog_migrate/551ba87648cc8dc4c2e18b3c5b705dc7.jpeg)
![7928ed6430825d03eeebae8dafdf2a09.png](https://i-blog.csdnimg.cn/blog_migrate/bdb93b7a0ebf431fe5ab6b9edd053089.jpeg)
![54fbd41e568d9973d6baa4803857d8b6.png](https://i-blog.csdnimg.cn/blog_migrate/5d32ae85ffe7123a8dca706faffc7fa1.jpeg)
![0b6a0fa4e8e8b763f76c1269730491d3.png](https://i-blog.csdnimg.cn/blog_migrate/e087f43e27a4427009493cbe179013bb.jpeg)
![75964bfbe8a7bf6f7ea1715fc3cc7238.png](https://i-blog.csdnimg.cn/blog_migrate/2839c8f67ea7ffcf70bef72427e0c84a.jpeg)
但是后面 import tensorflow 的时候出现了如下错误:
![71e0c0a08a5870691d284c2d860ebcfe.png](https://i-blog.csdnimg.cn/blog_migrate/6cfdafef49e2701f5714617c57df503c.jpeg)
这个报错的意思应该是当前的tensorflow-1.14.0版本不支持CUDA-10.1,它提供了官方网址让去下载CUDA-10.0,另外尚未了解tensorflow-2.0新版本是否支持最新的CUDA-10.1。
PS:来回折腾了两天多可算给windows10配置了比较新版的环境,下一步打算在Ubuntu18.04上也尝试下新版本(据说直接 conda install tensorflow-gpu 一句搞定,不知道是不是配置的最新版本),后续如果踩坑比较多的话再追加。