win7+cuda-9.0 + cudnn7 + tensorflow-gpu 1.5配置

本文介绍了在Win7系统下,配置CUDA 9.0、cuDNN 7以及TensorFlow-GPU 1.5的详细步骤,包括显卡驱动安装、CUDA和cuDNN的下载与配置,以及解决安装TensorFlow-GPU时遇到的问题。特别指出,CUDA 9.1版本可能与某些GPU不兼容,建议使用CUDA 9.0。最后,作者强调了GPU的compute capability对于成功配置的重要性。
部署运行你感兴趣的模型镜像

这几天一直在配置tensorflow-gpu版本,之前用的是tensorflow-cpu版本,训练过比较简单的mnist手写数字识别模型,也直接跑过别人训练好的openpose人体姿态识别模型,效率都比较低,既然想要继续学习计算机视觉这一块,最好是能用gpu,可以大大节省模型训练时间。这几天遇到不少坑,但当最终import tensorflow没有报错的时候,感觉踩得那些坑都不算什么。这个过程中参考了许多别人的经验和教程,现在自己再造轮子的原因是一方面想回顾下整个过程,理清思路,另一方面我遇到并解决的问题,别人可能没有遇到,所以放在这里也希望能帮助后人避开不必要的坑。

首先说明下我的环境:win7-64位系统+Nvidia GTX960显卡+python3.6.3。大家要注意自己的显卡要支持cuda, 可以到官网上查找

1. 显卡驱动安装。因为之前是没有独立显卡的,新装的独显,因此需要装驱动。不过也有人说装cuda的时候自带驱动,这个我没有验证。

http://www.nvidia.cn/download/driverResults.aspx/131469/cn

这个下载完之后直接安装即可。

2. 下载并安装cuda+cudnn。

注意,因为之前网上的很多教程都是cuda8.0的,而我直接下载安装了9.1版本,结果悲剧了。。。后来装的是9.0版本,经验证,cuda9.0+cudnn7.0是没有问题的。这里是第一个大坑,我开始的时候想最新的应该没有问题,后面当我import tensorflow的时候,提示找不到cudart64_90.dll, 提示让去官网下载cuda9.0。这可是在我已经下载、安装、配置完cudnn之后(因为cudnn要和cuda的版本一致)。无奈,从新下了9.0的cuda和对应的cudnn。

CUDA 的下载地址:https://developer.nvidia.com/cuda-downloads ,这个目前是最新的9.1版本

CUDA的历史版本: https://developer.nvidia.com/cuda-toolkit-archive,我用的是9.0版本

当cuda安装完成后, 会发现环境变量里增加了CUDA_PATH和CUDA_PATH_V9_0,

我们需要在Path变量里添加几个值,(如果已经存在,则不需要添加)

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin;

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\libnvvp;

C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\lib\x64

在cmd中输入命令:nvcc -V,如果现实cuda的版本信息,则安装成功。

cudnn下载地址:https://developer.nvidia.com/rdp/cudnn-download,主要要下载和cuda对应版本,我安装的是cuDNN v7.0.5 (Dec 5, 2017), for CUDA 9.0。

下载完成解压后,有bin, include, lib三个文件夹,把他们复制到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0文件夹下,选择合并到现有文件夹。这样cuda 和cudnn都安装完毕了。

3. 安装tensorflow-gpu。这里本来以为不会有什么问题,结果还是出现了大坑。我先用pip install tensorflow-gpu,安装过程很顺利,默认安装的是tensorflow-gpu 1.6版本, 看见显示安装成功后,就赶快import试一下,结果又报错:

ImportError: No module named _pywrap_tensorflow_internal

这里省略了前面和后面的错误内容。结果BD+GG了好久,最后终于在github上找到了答案:

https://github.com/tensorflow/tensorflow/issues/9469#issuecomment-371764778

可能是电脑不支持AVX指令集的原因,不能用tensorflow1.6, 于是我就下了个cpu-z工具,一查,果然不支持,


于是把tensorflow-gpu降级, 先卸载pip uninstall tensorflow-gpu, 再安装1.5 版本,pip install tensorflow-gpu==1.5。显示安装成功后,重新打开cmd, 输入python回车,输入import tensorflow,没有报错!至此终于成功安装了gpu版本的TF。

PS:tensorflow 官网要求gpu的compute capability要不低于3.0, https://www.tensorflow.org/install/install_windows


我之前用的是GT630, 查了下compute capability 才 2.1, 一度怀疑是自己的GPU配置太低所以配置不成功,后来换了台电脑装了GTX960,compute capability > 5, 按照上面的步骤配置成功了, 然后按照上面的步骤重新配置了下GT630的电脑,居然可以成功import!!!所以还是软件版本的问题。



您可能感兴趣的与本文相关的镜像

PyTorch 2.5

PyTorch 2.5

PyTorch
Cuda

PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由 C++ 实现,应用于人工智能领域,如计算机视觉和自然语言处理

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值