Win7 +Cuda9.0+cudnn7.0.5 tensorflow-gpu1.5.0 安装实战
https://blog.csdn.net/gangeqian2/article/details/79358543
https://blog.csdn.net/tomato_sir/article/details/79973237
https://blog.csdn.net/qq_36556893/article/details/79433298 -->这里面有个链接,支持cuda9.1的tensorflow
装GPU版本的tensorflow,搞了1天多,终于搞清来龙去脉。记录于此希望让你少走弯路。
我的第一块显卡是 NVIDIA Quadro 2000
支持cuda5.0.1 ,驱动太低,tensorflow gpu版本需要至少cuda8.0。 你用驱动精灵升级你的显卡驱动。
后来发现,不需要用驱动精灵先升级显卡驱动的。你就直接装cuda,全部安装,别少选,他里面有驱动,会帮你升级。但问题是,老显卡你不知道最高支持多少,比如显卡最高支持cuda8.0,你装个cuda9.0,那不行的。
所以,如果你是第一次装,你还是老老实实先用驱动精灵升级显卡驱动,这样你就知道显卡最高支持多少的cuda了。
我之前不知道上面的规律,所以我看到5.0.1后,以为这显卡不能用,换了一个更高级的显卡,用驱动精灵装完驱动后发现显卡是cuda9.2,后来发现后续装cudnn 支持不了9.2(why?你看这篇文章的第5点,列表中cuda9.2没有支持win7的包),后来重新装cuda9.0 后,这里的驱动也降到了9.0.
上面的经验也折腾了好久。。
下图是我第一块显卡,后来被证实这块显卡装好最新驱动后支持cuda8.0. 下面的记录都是我用第二块显卡的过程。这个图的主要目的是让你知道哪里去找显卡的cuda版本。你运行里面直接搜索'nvidia控制面板就行'
图一
1.为了要cpu和gpu都支持,需要新建一个新的虚拟环境
(后来我把虚拟环境删除了,不要cpu版本的了,直接gpu版本,下面2.3 两步可以省略)
conda create --name tensorflow-gpu python=3.6
红色字为新环境名字,随意~
2.切换到新的环境
activate tensorflow-gpu
3.查看当前环境, 可以看到已经切换了。 * 好就是当前的环境
conda info --envs
4.安装cuda
先装 VS2013 (VS2015 VS2017 都可以行,vs2012是否可以,请网友试验成功后告诉我哈,我装cuda时,里面显示可以装vs2012的扩展,所以我认为都是可以的)
装完vs,装cuda
CUDA下载地址:https://developer.nvidia.com/cuda-downloads
我的cuda在这里:https://developer.nvidia.com/cuda-90-download-archive?target_os=Windows&target_arch=x86_64&target_version=7&target_type=exelocal
5. 装cudnn
务必到下面网站看下,支持的cuda版本,和操作系统的版本。我是win7,cuda9.0 用的是红框的。
https://developer.nvidia.com/rdp/cudnn-archive (这网站要注册,而且网站比较慢,需要FQ,好麻烦的~~)
按照其他帖子,把cudnn直接复制到相应目录。
打开你下载路径可以看到cuda文件夹下有三个子文件,分别为bin、include和lib
将以下三个路径添加到环境变量中(不知道环境变量在哪的朋友自行百度~)
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin;
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\include;
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\lib\x64;
(温馨提示:记得路径之间加分号 ;)
6. 安装 tensorflow-gpu 1.5.0
如果第一次使用anaconda,pip可能比较老了,可以升级一下pip先:
python -m pip install --upgrade pip
安装之前记得先把cpu版本的tensorflow卸载,还有tensorboard也卸载。
pip uninstall tensorflow
pip uninstall tensorboard (这步大概不需要,你自己看看吧)
pip install tensorflow-gpu==1.5.0 指定一个版本, 老版本不支持 cuda9.0 只支持cuda8.0,新的版本据说有bug,反正用1.5.0据说不出问题。
备用,如果你pip安装出错或者网络慢,可以先下载whl文件:
tensorflow 的 whl文件下载
https://pypi.org/project/tensorflow-gpu/1.5.0/#files
7.测试下
我做测试时,所有都装好后运行下面两句,import没问题,但是tf.__version__显示没有这个模块。
经过反复重装也没用,最后,我把anaconda更新了一下。就好了【轻描淡写的一句话,实际上我折腾了大半天。。。。最后不行了才想到去更新anaconda】
import tensorflow as tf
tf.__version__
测试是否能用gpu,应该返回true
tf.test.is_gpu_available( cuda_only=False, min_cuda_compute_capability=None )
8. 更新anaconda
以下两个方法都OK。大概需要半小时左右(看网速多快了)。我用第一个方法的。
方法1:
方法2:
conda install -c anaconda html5lib
用了方法一后,我对比了一下,发现里面的包并没有更新:
上面2种方法还是有点区别的,第二种方法会更新所有的库,第一种方法并没有更新别的库,只是更新了conda
类似于下面,这句话的意思是更新conda,这个指令的作用是更新conda 的package库
第一种方法类似于:conda update conda
第2种方法类似于:conda update --all
conda的文档
https://conda.io/docs/user-guide/getting-started.html
9. 经过上面第8步更新后,再回到第六步,安装tensorflow-gpu 就可以安装成功了。
一段demo
#写在第一段单元格
import tensorflow as tf hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello)) a = tf.constant(10)
b = tf.constant(32)
print(sess.run(a + b)) #写在第二个cell
import tensorflow as tf
import numpy
import matplotlib.pyplot as plt
rng = numpy.random learning_rate = 0.01
training_epochs = 1000
display_step = 50
#数据集x
train_X = numpy.asarray([3.3,4.4,5.5,7.997,5.654,.71,6.93,4.168,9.779,6.182,7.59,2.167,
7.042,10.791,5.313,9.27,3.1])
#数据集y
train_Y = numpy.asarray([1.7,2.76,3.366,2.596,2.53,1.221,1.694,1.573,3.465,1.65,2.09,
2.827,3.19,2.904,2.42,2.94,1.3])
n_samples = train_X.shape[0]
X = tf.placeholder("float")
Y = tf.placeholder("float") W = tf.Variable(rng.randn(), name="weight")
b = tf.Variable(rng.randn(), name="bias") pred = tf.add(tf.multiply(X, W), b) cost = tf.reduce_sum(tf.pow(pred-Y, 2))/(2*n_samples) optimizer = tf.train.GradientDescentOptimizer(learning_rate).minimize(cost) init = tf.initialize_all_variables()
with tf.Session() as sess:
sess.run(init) # 训练数据
for epoch in range(training_epochs):
for (x, y) in zip(train_X, train_Y):
sess.run(optimizer, feed_dict={X: x, Y: y}) print("优化完成!")
training_cost = sess.run(cost, feed_dict={X: train_X, Y: train_Y})
print("Training cost=", training_cost, "W=", sess.run(W), "b=", sess.run(b), '\n') #可视化显示
plt.plot(train_X, train_Y, 'ro', label='Original data')
plt.plot(train_X, sess.run(W) * train_X + sess.run(b), label='Fitted line')
plt.legend()
plt.show()
运行后显示:
10 虽然能运行上面的,但是发现导入tensorflow时会报错
是因为numpy版本和h5py的不兼容,升级 pip install --upgrade h5py==2.8.0rc1
参考:
https://blog.csdn.net/u014561933/article/details/80156091
Win7 +Cuda9.0+cudnn7.0.5 tensorflow-gpu1.5.0 安装实战的更多相关文章
- Ubuntu16.04 + cuda9.0 + cudnn7.1.4 + tensorflow安装
安装前的准备 UEFI 启动GPT分区 Win10和Ubuntu16.04双系统安装 ubuntu16.04 NVIDIA 驱动安装 ubuntu16.04 NVIDIA CUDA8.0 以及cuDN ...
- Ubutu16.04+Cuda9.2/9.0+Cudnn7.12/7.05+TensorFlow-gpu-1.8/1.6
目录 Ubuntu16.04 Installl 1. 安装环节 2. 安装卡死 3. NVIDIA显卡安装 2. CUDA Install 3.Cudnn7.05 Install 4.Tensorfl ...
- Ubuntu18.04: GPU Driver 390.116 + CUDA9.0 + cuDNN7 + tensorflow 和pytorch环境搭建
1.close nouveau 终端输入:sudo gedit /etc/modprobe.d/blacklist.conf 末尾加两行 blacklist nouveau options nouve ...
- ubuntu16.04 安装cuda9.0+cudnn7.0.5+tensorflow+nvidia-docker配置GPU服务
[摘要] docker很好用,但是在GPU服务器上使用docker却比较复杂,需要一些技巧,下面将介绍一下在ubuntu16.04环境下的GPU-docker环境搭建过程. 第一步: 删除之前的nvi ...
- 在linux上cuda9.0 cudnn7.* 安装python3.6 tensorflow 1.5.1
链接:https://www.jianshu.com/p/bcf37d0e4e9b 为了入门机器学习的小伙伴能安装好工具,特制作此教程 按照 Anaconda 下载网站上的说明下载并安装 Anacon ...
- ubuntu18.04下搭建深度学习环境anaconda2+ cuda9.0+cudnn7.0.5+tensorflow1.7【原创】【学习笔记】
PC:ubuntu18.04.i5.七彩虹GTX1060显卡.固态硬盘.机械硬盘 作者:庄泽彬(欢迎转载,请注明作者) 说明:记录在ubuntu18.04环境下搭建深度学习的环境,之前安装了cuda9 ...
- Tensorflow1.5.0+cuda9.0+cudnn7.0+gtx1080+ubuntu16.04
目录 Tensorflow1.5.0+cuda9.0+cudnn7.0+gtx1080+ubuntu16.04 0. 前记 1. 环境说明 2. 安装GTX1080显卡驱动 3. CUDA 9.0安装 ...
- Ubuntu18.04 + CUDA9.0 + cuDNN7.3 + Tensorflow-gpu-1.12 + Jupyter Notebook深度学习环境配置
目录 一.Ubuntu18.04 LTS系统的安装 1. 安装文件下载 2. 制作U盘安装镜像文件 3. 开始安装 二.设置软件源的国内镜像 1. 设置方法 2.关于ubuntu镜像的小知识 三.Nv ...
- Ubuntu16.04 + CUDA9.0 + cuDNN7.3 + Tensorflow-gpu-1.12 + Jupyter Notebook 深度学习环境配置
目录 一.Ubuntu16.04 LTS系统的安装 二.设置软件源的国内镜像 1. 设置方法 2.关于ubuntu镜像的小知识 三.Nvidia显卡驱动的安装 1. 首先查看显卡型号和推荐的显卡驱动 ...
- ubuntu 16.04 +anaconda3.6 +Nvidia DRIVER 390.77 +CUDA9.0 +cudnn7.0.4+tensorflow1.5.0+neural-style
这是我第一个人工智能实验.虽然原理不是很懂,但是觉得深度学习真的很有趣.教程如下. Table of Contents 配置 时间轴 前期准备工作 anaconda3 安装 bug 1:conda:未 ...
随机推荐
- 60分钟搞定JAVA加解密
从摩尔电码到小伙伴之间老师来了的暗号,加密信息无处不在.从军事到生活,加密信息的必要性也不言而喻. 今天,我们就来看看java怎么对数据进行加解密 分类 a.古典密码 -- 受限制算法:算法的保密性给 ...
- 微信小程序 - 表单验证插件WxValidate(自定义警告信息形式)
弹出的形式对于用户来说,总是不太友好的 可能会出现层级问题(只需要设置一下提示的层级即可) WxValidate内置规则 以下代码拷贝即可使用~ wxml <form bindsubmit='s ...
- ionic在iOS中打包失败
在ios中打包失败,遇上这样的错误 解决办法,查看index.html的权限是否是只读状态,如果是,改成可读可写,再次打包重试,成功!
- android 完美的tabhost 切换多activity布局
TabHost在很多应用都会使用到,有时候在TabHost添加的Tab中设置view不能满足需求,因为在view中添加如PreferenceActivity相当困难. 之前在一个应用中需要实现使用Ta ...
- 详解CSS的相对定位和绝对定位(讲得很详细)
详解CSS的相对定位和绝对定位 CSS的相对定位和绝对定位通常情况下,我们元素的position属性的值默认为static 就是没有定位,元素出现在正常的文档流中,,这个时候你给这个元素设置的left ...
- XAOP的使用示范例子
代码地址如下:http://www.demodashi.com/demo/12976.html XAOP 一个简易的AOP(Android)应用框架.囊括了最实用的AOP应用. 特点 支持快速点击切片 ...
- sql笔记 获取指定数据库下的所有表
SELECT Name FROM 数据库名称..SysObjects Where XType='U' ORDER BY Name XType='U' 标识查询用户创建的表 S为系统创建的表
- python操作xml文件
一.什么是xml? xml即可扩展标记语言,它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言. abc.xml <?xml version="1.0&q ...
- ubuntu 环境变量PATH的修改
sudo nano /etc/environment 环 境变量是和Shell紧密相关的,用户登录系统后就启动了一个Shell.对于Linux来说一般是bash,但也可以重新设定或切换到其它的 She ...
- 283. Move Zeroes【easy】
283. Move Zeroes[easy] Given an array nums, write a function to move all 0's to the end of it while ...