https://www.cnblogs.com/31415926535x/p/10536572.html

概述

因为选修了数字图像这门课,,要做一个人脸识别的项目,和室友打算利用tensorflow来训练一个模型,,然后刚开始的环境配置就折腾了一天,,

现在记录一下大致的流程和遇到的坑,,(只是简略的写写配置的要点,,具体的信息别的博客讲的很清楚了,,,

最后的环境: win10x64 + gtx1050 + CUDA9.0 + cuDNN9.0 + Anaconda + Tensorflow1.9.0

英伟达官网你会发现1050不能使用它的CUDA,,但实际上是可以使用的,,后面可以看出算力大概是6.1,,

配置流程

只列出必要的流程以及我遇到的坑,,

详细的安装过程参考别人的博客:

Win10+1050Ti配置Tensorflow教程

Win10下Tensorflow(GPU版)安装趟坑实录

win10搭建tensorflow-gpu环境

tensorflow 安装GPU版本,个人总结,步骤比较详细

在Windows 10上安装TensorFlow并支持GPU的最佳方式(无需安装CUDA

Win10+cuda8.0+cudnn5.1+tensorflow-gpu1.2.0+gtx1050ti,tensorflow环境搭建与配置

tensorflow 使用CPU而不使用GPU的问题解决

Python配置

首先是Python的配置,,Python很简单就可以弄好了,,去官网下载win的安装器,,点一点等一等就行了,,

Anaconda安装

这个也是直接去官网下载安装就行了,,,安装的过程可能会很长,,所以要一直等,,会出现终端,,不要叉掉,,等就可以了,,,(貌似这玩意儿2个多G

CUDA9.0安装

CUDA9.0下载地址

这是一个大坑!!!被这玩意坑了一次,,,

首先,英伟达的官网你直接进去去下CUDA只显示最新版10.1,,,然后我就想着有新的就直接上新版本的算了,,,后来才发现Tensorflow到现在还不支持10.0的版本,,,最多只能用9.0的,,

还有一个坑,,,选择的安装器是第一个(Base Installer)还有选择在线安装(exe(Network)),,,

最后,,因为我的C盘不怎么空余了,,,所以就把这玩意装到了别的盘,,这样的话 系统环境变量 得重新修改,,

参考博客1

参考博客2

都可以

cuDNN v7.5.0 for CUDA 9.0

这玩意也是一个坑,,,

因为CUDA安装的是9.0版本的,,所以这玩意也只能装对应的版本,,,

下载地址

会要你注册账号,,最主要的是10.0版本的可以直接下载,,换成9.0的就得要梯子,,,惊了,,,

下载好后解压,,把里面的那三个文件复制到cuda对应的文件夹里,,参考上面那几个博客的操作

vs2017

看到网上有人说配置环境需要vs来编译什么的,,,因为我在之前就已经装好了vs2017,,所以就省略了这一步的安装,,没有测试不装会发生什么,,

安装Tensorflow-gpu--1.9.0 并测试

之前的所有东西都弄好后就可以安装 Tensorflow 了,,,

打开 Anaconda Prompt

因为地下室这里网还不错,,所以就没有去配置清华的镜像,,

安装Tensorflow: conda install tensorflow-gpu==1.9.0 因为现在(2019-3-15)Tensorflow已经是1.13.0版本了,,直接安装的话就会是最新版,,,不知道怎么回事,,最新版的话我这里在之后不会调用gpu来运行,,用这个版本之后就可以了(CUDA的锅?),,(也有可能是我在改变了其它的因素的原因,,,待验证

创建运行环境; conda create -n tensorflow-gpu python=3.6 等待安装就行了,,

激活环境: conda activate tensorflow-gpu

验证

然后打开python,,

输入:

import tensorflow as tf         //0
hello = tf.constant('hello')
sess = tf.Session() //1
print(sess.run(hello)) //2
sess.close()
  • 在输完0代码之后,会停顿一会,,
  • 在输完1代码之后,会显示一些信息,,如果说有有关gpu的信息的话证明调用gpu成功,,否则的话只有一条cpu的信息,,可能之前的安装有问题,,重新安装试试,,(我就是因为这个重装了好几遍
  • 在输完2代码之后,显示 b'hello'

1的输出类似这样:

2019-03-15 13:03:55.881573: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\platform\cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX AVX2
2019-03-15 13:03:56.695820: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:1392] Found device 0 with properties:
name: GeForce GTX 1050 major: 6 minor: 1 memoryClockRate(GHz): 1.493
pciBusID: 0000:01:00.0
totalMemory: 2.00GiB freeMemory: 1.61GiB
2019-03-15 13:03:56.702429: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:1471] Adding visible gpu devices: 0
2019-03-15 13:03:57.517589: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:952] Device interconnect StreamExecutor with strength 1 edge matrix:
2019-03-15 13:03:57.521414: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:958] 0
2019-03-15 13:03:57.523379: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:971] 0: N
2019-03-15 13:03:57.525486: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:1084] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 1359 MB memory) -> physical GPU (device: 0, name: GeForce GTX 1050, pci bus id: 0000:01:00.0, compute capability: 6.1)

也可以这样验证:

from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())

会输出一长条的信息,,例如:

>>> from tensorflow.python.client import device_lib
>>> print(device_lib.list_local_devices())
2019-03-15 13:13:03.527577: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:1471] Adding visible gpu devices: 0
2019-03-15 13:13:03.545230: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:952] Device interconnect StreamExecutor with strength 1 edge matrix:
2019-03-15 13:13:03.563464: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:958] 0
2019-03-15 13:13:03.576112: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:971] 0: N
2019-03-15 13:13:03.587662: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:1084] Created TensorFlow device (/device:GPU:0 with 1359 MB memory) -> physical GPU (device: 0, name: GeForce GTX 1050, pci bus id: 0000:01:00.0, compute capability: 6.1)
[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}
incarnation: 5406329819980989395
, name: "/device:GPU:0"
device_type: "GPU"
memory_limit: 1425578393
locality {
bus_id: 1
links {
}
}
incarnation: 3552327620198962820
physical_device_desc: "device: 0, name: GeForce GTX 1050, pci bus id: 0000:01:00.0, compute capability: 6.1"
]

如果失败的话(也就是只有cpu运算)就是这样:

[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}

再或者这样:

import tensorflow as tf
a = tf.constant([1.0, 2.0], name="a")
b = tf.constant([2.0, 3.0], name="b")
result = a + b
print(result) sess = tf.InteractiveSession()
print(result.eval())
sees.close()

正常情况下也会显示gpu等信息

>>> import tensorflow as tf
>>> a = tf.constant([1.0, 2.0], name="a")
>>> b = tf.constant([2.0, 3.0], name="b")
>>> result = a + b
>>> print(result)
Tensor("add_1:0", shape=(2,), dtype=float32)
>>> sess = tf.InteractiveSession()
2019-03-15 13:19:57.500304: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:1471] Adding visible gpu devices: 0
2019-03-15 13:19:57.514303: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:952] Device interconnect StreamExecutor with strength 1 edge matrix:
2019-03-15 13:19:57.530082: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:958] 0
2019-03-15 13:19:57.539267: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:971] 0: N
2019-03-15 13:19:57.547441: I C:\users\nwani\_bazel_nwani\ujdkfsks\execroot\org_tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:1084] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 1359 MB memory) -> physical GPU (device: 0, name: GeForce GTX 1050, pci bus id: 0000:01:00.0, compute capability: 6.1)
>>> print(result.eval())
[3. 5.]

使用

每次使用tensorflow时,,因为我们是在Anaconda的虚拟的一个环境里运行tensorflow+python,,所以要先激活环境:conda activate tensorflow-gpu,,,(这么说先前直接安装的python不仅版本过高,,而且没用上)

对了必须要在cmd里使用,,powershell貌似不行,,,进入powershell输入 cmd 切换到cmd就行了,,,激活环境后前面会多一个环境名: (tensorflow-gpu),,这样再进入python等等,,,

结束

这样环境的配置基本就完了,,大概占了12个多G的存储空间,,,emmmm心疼硬盘ing

从昨天晚上到今天上午,,折腾了几遍,,,最后还是弄好了,,,最怕的不是出各种各样的错误,,而是放弃吧,,,毕竟很多人都在弄这个,,会遇到一样的状况,,总会找到解决的方法的,,,

(猜测:安装anaconda时,,发现里面有cuda了,,可能不需要安装cuda就可以,,留坑)

(end)

拯救者Y720-gtx1050-window10-配置tensorflow-gpu环境的更多相关文章

  1. conda+豆瓣源配置tensorflow+keras环境

    conda+豆瓣源配置tensorflow+keras环境 安装anaconda 打开Anaconda Prompt 创建虚拟环境 conda create -n myenv python=3.5 a ...

  2. 【转】Ubuntu 16.04安装配置TensorFlow GPU版本

    之前摸爬滚打总是各种坑,今天参考这篇文章终于解决了,甚是鸡冻\(≧▽≦)/,电脑不知道怎么的,安装不了16.04,就安装15.10再升级到16.04 requirements: Ubuntu 16.0 ...

  3. PyCharm配置TensorFlow开发环境

    Anaconda自带的Jupyter Notebook很方便,但是执行速度较慢,缺少调试环境.PyCharm与Jupyter Notebook相比,执行速度更快,而且提供了类似Matlab的调试工具, ...

  4. Ubuntu系统安装配置tensorflow开发环境

    Ubuntu系统安装 下载ubuntu iso 选择目前最新的版本是 Ubuntu 18.04 LTS .下载地址: 官网:https://www.ubuntu.com/download/deskto ...

  5. Win7系统中用anaconda配置tensorflow运行环境

    前言:anaconda是一个python Data Science Platform.安装它的契机是因为要用tensorflow. 安装完后感觉用它来管理python运行环境还是挺方便的,常用的con ...

  6. linux manjaro 配置 pytorch gpu 环境

    manjaro目前中国资料偏少,踩了很多坑. 安装gpu版本就这么几个步骤 1 安装英伟达的驱动cuda  2 安装 cudnn   3 安装支持gpu的pytorch 或者其他的运算框架 manja ...

  7. Ubuntu 16.04 + CUDA 8.0 + cuDNN v5.1 + TensorFlow(GPU support)安装配置详解

    随着图像识别和深度学习领域的迅猛发展,GPU时代即将来临.由于GPU处理深度学习算法的高效性,使得配置一台搭载有GPU的服务器变得尤为必要. 本文主要介绍在Ubuntu 16.04环境下如何配置Ten ...

  8. 使用亚马逊云服务器EC2做深度学习(三)配置TensorFlow

    这是<使用亚马逊云服务器EC2做深度学习>系列的第三篇文章. (一)申请竞价实例  (二)配置Jupyter Notebook服务器  (三)配置TensorFlow  (四)配置好的系统 ...

  9. 深度学习 GPU环境 Ubuntu 16.04 + Nvidia GTX 1080 + Python 3.6 + CUDA 9.0 + cuDNN 7.1 + TensorFlow 1.6 环境配置

    本节详细说明一下深度学习环境配置,Ubuntu 16.04 + Nvidia GTX 1080 + Python 3.6 + CUDA 9.0 + cuDNN 7.1 + TensorFlow 1.6 ...

  10. 记录从裸机到TensorFlow GPU版运行 的配置过程

    实验室原来有一台装Ubuntu Server系统的服务器,安装有tensorflow,在使用过程中经常出现断网.死机.自动关机等毛病,忍无可忍,决定重装系统 配置如下:Dell工作站,Xeon-E5 ...

随机推荐

  1. ios消息机制

    ios消息机制介绍 ios 调用每一个方法的时候其实是走的ios的消息机制 举例介绍一下 创建一个Pserson类 有一个eat 对象方法 那么下面的代码可以用消息机制实现  导入消息头文件    # ...

  2. jsp 修饰 Request 及Response

    Servlet API包含4个可修饰的类,用于改变Servlet Request以及Servlet Response.这种修饰允许修改 ServletRequest以及ServletResponse或 ...

  3. Niagara物联网框架机制二(笔记)

    一.Niagara框架 1.一个Niagara 系统中有四种典型的Programs,这些程序间的关系及其网络通讯关系可通过下面的通讯图表解释 2. Niagara  Programs station ...

  4. 图像特征的提取(gaussian,gabor,frangi,hessian,Morphology...)及将图片保存为txt文件

    # -*- coding: utf-8 -*- #2018-2-19 14:30:30#Author:Fourmi_gsj import cv2 import numpy as np import p ...

  5. @ResponseBody//该注解会将返回值转为json格式并放到响应体中返回到前台

  6. IDEA快捷键之for循环

    intelliJ生成for循环代码. 迭代器for循环 iter Iterate iterable | Array in J2SDK 5 syntax itar Iterate elements of ...

  7. 磁盘修改AF

    请严格按照如下流程: 1 以管理员打开 硬盘安装助手 2 选择苹果Mac系统镜像 (cdr格式的) 3 直接选择要写入的盘,不要点击右边的方框中的勾选 (此时就可以写入了,虽然最后还是显示 Chang ...

  8. .NetCore 下开发独立的(RPL)含有界面的组件包 (三)构建界面

    .NetCore 下开发独立的(RPL)含有界面的组件包 (一)准备工作 .NetCore 下开发独立的(RPL)含有界面的组件包 (二)扩展中间件及服 务 .NetCore 下开发独立的(RPL)含 ...

  9. Dubbo 服务集群容错配置

    Dubbo集群容错是靠配置cluster属性来做 支持改属性的标签为<dubbo:service>,<dubbo:referece>,<dubbo:consumer> ...

  10. Visual Studio 2012 Update 3

    不知道是不是都关注Win8.1和Visual Studio 2013 preview去了… 貌似没大有人发现2012的update3在update2后2月就出了… ms明显加快了开发速度额… KB a ...