python & cuda & cudnn & 显卡型 & tensorflow 版本如果匹配不好,可能会踩坑。。
本篇文章,讲述了 全套安装过程 与 我所踩过的坑。
我也不是一次成的,当时 tf-13rc问世时,弄了好久。
稍微提一下,python官网首页的python3.7是 win32的。
我之前重装系统偷懒下载的。用了很久才发现是32位的。。。。
Tensorflow必须是需要 win 64位的。 (终端下输入 python就能看到是多少位的 xx bit )
注: 安装路径一律用 英文!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
最后成功的配套版本如下:
win10
gtx1050 (其他型号的,不保证,应该也能差不多)
python3.7 (感觉python问题并不是特别大。 建议 3.7)
cuda: cuda_10.0.130_411.31_win10
cudnn: cudnn-10.0-windows10-x64-v7.4.2.24
tensorflow-gpu==2.0.0-beta0
资源构成: CUDA + CUDNN + 4个vc环境 (vc环境干啥的,下面说)
我的网盘: https://pan.baidu.com/s/1Z6Ha...
提取码: 2qut
下载后别乱点,按顺序看下面教程安装。 有依赖的。
官链:https://developer.nvidia.com/... (如果你不想用我的工具包,可以自行CUDA官链)
如果你直接去安装CUDA时,可能会抛error, 提示你,需要依赖 vs201+ 环境。
其实我们大可不必安装 那么大体积的vs, 而是安装 vc_redist 插件即可。
安装环节:
- 你可以看到我分享的资源中, 有4个 vc_redist。
下载下来, 防漏,从上到下挨个安装一遍。(瞬装很快,如果提示你已安装,不用管。全部安装一遍) - 然后安装 CUDA,双击安装即可 (选精简版即可)(记住安装路径,我记得好像是默认自动路径,忘了)
- 一路下一步,即可安装成功
配置环节:
1. 默认自动安装的路径如下: (如果你选的自定义安装,你要记住你的路径)
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin
2. 将此路径配置到 环境变量 中
3. 关掉所有cmd, 重新打开cmd,输入 nvcc -V
4. 没报错说明安装成功。
官链:https://developer.nvidia.com/...(如果你不想用我的工具包,可自行官链)
(官网下 CUDNN 貌似需要登录)
操作环节:
- 你可以看到我分享的资源中,有CUDNN,下载下来,解压(任意位置都可,记住就行)。
-
解压后,进入解压的目录,你会看到有个cuda目录,进去!然后做如下操作!!!
2.1. 进入 bin 目录, 把里面的文件(应该就一个),复制到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin
2.2 进入 include 目录,把里面的文件(应该就一个),复制到
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\include
2.3 进入 lib 目录, 再继续进入 x64 目录,把里面的文件(应该就一个),复制到
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\lib\x64
说一下: 上面3个路径,安装cuda提到的(精简版的默认路径, 你的和我的是一模一样的,直接复制)
-
将此路径添加到环境变量 (同样是默认路径,直接拿去复制,配了就行):
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\lib\x64
每个人有每个人的习惯,建议用用虚拟环境安装东西。 我较熟练 virtualenv + virtualenvwrapper-win
当然,你直接装也是没问题的。
安装tensorflow-gpu==2.0.0-beta0:
pip install tensorflow-gpu==2.0.0-beta0 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
如果你是anaconda(那么需要先打开anaconda prompt pip)(科学):
pip install tensorflow-gpu==2.0.0-beta0
安装 matplotlib (非必须,但 反正也是不离手的东西,直接装了吧)
pip install scipy matplotlib pandas sklearn -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
至此,全部安装完成,接下来测试。
import tensorflow as tf
print(tf.__version__)
print(tf.test.gpu_device_name())
就这3行代码,即可。 看打印结果:
2.0.0-beta0 # 这是版本信息
/device:GPU:0 # GPU字样就说明可以使用GPU了。
执行上面代码测试的时候,我这里是有一大串 warning的。 关于数据类型的 warning。其实无伤大雅。
不,很伤,我去github找了一下。其实就是你的 numpy版本太新了。 重装换一个 1.17以下版本 就行。
CMD直接 运行以下命令即可:
pip uninstall -y numpy && pip install numpy==1.16.4
强迫症帮助者链接:https://github.com/tensorflow...
我的机子早一阵买的了, GTX1050的, 每个人的显型都不同。
所以也许我给出的配套版本,不能满足所有人需求。
下面说一下我之前装的时候遇到的问题:
- 记得安装路径尽量全部,用英文。
- cuda安不上,因为缺少 vs201+, (我上面说过了,安装我分享的那4个vc_redist小文件可代替安装 vs)
- 如果在安装tensorflow时,提示你,没有找到相关模块:
3.1 可能是你的 python 和 pip 版本过低
3.2 可能是你的 python是32位的。 (不要偷懒去安装主页的python3.7,那个是32位的。必须用64位) - 如果在安装tensorflow 或者 import tensorflow 时,给你报了一大堆错误:
4.0 首先看错误能不能看懂
4.1 可能是我给的 配套版本。 并不能满足你的 机器,显型。 这时候你就得自己去找对应版本了
4.2 我之前弄的时候,我记得好像有 Nvidia显卡 & cuda & cudnn 的对照表。忘记录了。可自行寻找。