Windows下Tensorflow-GPU的安装,Tensorboard的使用,以及过程中遇到的各种坑
2017-06-09 19:27
701 查看
1、安装Anaconda
Anaconda 4.3.1 (Python 3.6)下载页:https://www.continuum.io/downloads
安装后,如果conda下载包的速度很慢,可以执行下面的命令设置国内镜像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --set show_channel_urls yes
执行后生成C:\Users\USER_NAME目录下的.condarc文件记录着conda的配置
2、CUDA和CUDNN
cuda:https://developer.nvidia.com/cuda-downloads版本:windows cuda 8.0
cudnn(Cuda Deep Neural Network library,是用于深度神经网络的GPU加速库,提供了forward and backward convolution, pooling, normalization, and activation layers等实现,让深度学习的研究者能够专注于训练神经网络而不是花费在 low-level GPU performance tuning上。许多深度学习框架都可以用cudnn加速,包括Tensorflow、Caffe、Theano、Torch、CNTK。):
https://developer.nvidia.com/cudnn
版本:cudnn v5.1 library for windows 7
下载cudnn需要注册一下。
1、安装cuda
2、解压cudnn,里面是三个文件夹bin、include、lib。将这三个文件夹复制到cuda的安装目录下C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0
3、安装Tensorflow
conda create -n tensorflow-gpu python=3.6 创建了一个环境,名字叫tensorflow-gpu activate tensorflow-gpu 激活这个环境
可以看到命令前面有tensorflow-gpu标识。
pip install tensorflow-gpu import tensorflow as tf hello=tf.constant('Hello,Tensorflow') sess=tf.Session()
开启Session,会看到下图,正确的是只有I开头的消息,我这儿出现W开头的消息,也就是警告Warning,似乎和SSE指令集有关。不过不是错误我就先忽略了。
print(sess.run(hello))
正确输出‘Hello,Tensorflow’说明安装成功。
4、使用Tensorboard
这是用来可视化的工具,可以直观的观察神经网络的结构,和数据在神经网络中的变化。D:\Anaconda路径
\envs\tensorflow-gpu\Lib\site-packages\tensorflow\examples\tutorials\mnist
这个路径下是一个经典的识别手写数字的例子。
cd PYTHON\Anaconda3\envs\tensorflow-gpu\Lib\site-packages\tensorflow\examples\tutorials\mnist 首先转到这个路径下 activate tensorflow-gpu 激活环境 python mnist_with_summaries.py 执行代码
需要的数据执行代码时会自动下载,可以看到随着训练的进行精确度不断提高。
训练完成后.\mnist\tmp\tensorflow\mnist下有两个文件夹,input_data和logs。input_data下是用到的数据。logs下是训练过程中存储的数据用来显示在tensorboard上。
(我第一次运行mnist_with_summaries.py完之后,并没有看到这个文件夹,也没有看到记录数据的文件“events.out.tfevents.1497007494”,便自己新建了一个文件夹tmp,运行了第二次结果就有了,我也不知道为毛。。。)
之所以在这个文件夹下是因为代码中有如下代码,可以看到默认路径是这样的。
parser.add_argument( '--data_dir', type=str, default='./tmp/tensorflow/mnist/input_data', help='Directory for storing input data') parser.add_argument( '--log_dir', type=str, default='./tmp/tensorflow/mnist/logs/mnist_with_summaries', help='Summaries log directory') train_writer = tf.summary.FileWriter(FLAGS.log_dir + '/train', sess.graph) test_writer = tf.summary.FileWriter(FLAGS.log_dir + '/test')
tensorboard --logdir=/tmp/tensorflow/mnist/logs/mnist_with_summaries
然后在浏览器中输入localhost:6006
可能会遇到显示错误,我首先更新了谷歌浏览器,然后在论坛上看到一个人说的方法,先将命令行的目录进入/tmp/tensorflow/mnist/logs,再执行命令才能成功。ORZ。
tensorboard --logdir=mnist_with_summaries
遇到的错误
cupti64_80.dll缺失
2017-06-09 15:46:34.429648: I c:\tf_jenkins\home\workspace\release-win\m\windows -gpu\py\36\tensorflow\stream_executor\dso_loader.cc:129] Couldn't open CUDA library cupti64_80.dll 2017-06-09 15:46:34.430649: F c:\tf_jenkins\home\workspace\release-win\m\windows -gpu\py\36\tensorflow\stream_executor\lib\statusor.h:205] Non-OK-status: status_status: Failed precondition: could not dlopen DSO: cupti64_80.dll; dlerror: cup ti64_80.dll not found
可以在C:\Program Files\NVIDIA GPU Computing
Toolkit\CUDA\v8.0\extras\CUPTI\libx64下找到这个文件。
我看了一下我的电脑的环境变量path关于cuda只有:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin;
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\libnvvp
因此找不到这个文件。
将这个文件拷贝到
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin
将cupti.lib拷贝到
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64
NVIDIA GeForce GT 640M设备是不可移动的,无法弹出或拔出
这个是因为我的驱动程序版本不对,应该装合适的显卡驱动。右键计算机,属性,然后打开设备管理器。可以看到我的显卡是NVIDIA GeForce GT 640M。
进入这个地址http://www.nvidia.cn/download/driverResults.aspx/119496/cn,选择自己需要的系列、系统等信息,搜索,进入下载界面下载适合自己显卡的驱动程序。下载后安装好即可。
电脑上的GPU是CUDA-enabled的吗
nvidia:https://developer.nvidia.com/cuda-gpus使用GPU的tensorflow对NVIDIA的计算能力是有要求的,可以在这个地址上看到符合要求的GPU。我的GPU类型是GeForce的,因此点开CUDA-Enabled GeForce Products可以看到符合条件的各系列GPU。
CUDNN 版本问题
2017-06-07 16:29:00.354047: E c:\tf_jenkins\home\workspace\release-win\m\windows -gpu\py\36\tensorflow\stream_executor\cuda\cuda_dnn.cc:352] Loaded runtime CuDNN library: 6021 (compatibility version 6000) but source was compiled with 5105 (compatibility version 5100). If using a binary install, upgrade your CuDNN library to match. If building from sources, make sure the library loaded at runtime matches a compatible version specified during compile configuration.
这个错误时因为现在用的cudnn是6.1版本的,应该用5.1版本的。下载v5.1的CUDNN重新解压,复制过来。
相关文章推荐
- Ubuntu16.04下安装Anaconda3过程python3.6使用,以及重新建立新的Python2.7并安装tensorflow-gpu,测试并成功。
- ubuntu16.04下使用anaconda安装tensorflow_gpu版本以及object detection的过程
- 阿里云----------阿里云服务器使用过程中遇到的各种奇葩问题以及解决渠道
- windows下安装python basemap时使用Visual Studio编译geos时遇到的问题以及解决方法
- Win10 配置tensorflow1.3 GPU版本以及tensorboard的使用
- redis安装配置使用过程的遇到的各种问题
- Win10 Python 3.6.1 安装pycrypto 过程中遇到的坑以及各种解决方法
- Windows上安装TensorFlow-GPU遇到的神奇问题
- Cocoa pods的安装使用以及过程中可能会遇到问题的汇总
- [完美解决]如何在windows安装docker toolbox,使用tensorflow,Jupyter Notebook,各种问题的解决方案
- windows下php7.1安装redis扩展以及redis测试使用全过程
- Windows 7(10) 下安装 tensorflow,theano,keras并使用GPU加速。
- windows下php7.1安装redis扩展以及redis测试使用全过程(另附php5版本)
- Win10 Anaconda 安装tensorflow-gpu遇到的问题以及解决方案
- windows下php7.1安装redis扩展以及redis测试使用全过程
- 如何在Linux 系统 以及windows 系统安装 tensorflow -cpu -gpu 老版本 0.12 ,0.10
- [置顶] windows下php7.1安装redis扩展以及redis测试使用全过程
- Windows上安装Tensorflow 以及集成Spark遇到的问题
- R安装ggbiplot在windows下的调试过程以及使用方法
- Windows系统基于anocanda安装tensorflow以及如何在notebook,spyder等中使用tensorflow