Google TensorFlow for GPU安装、配置大坑

从本周一开始(12.05),共4天半的时间,终于折腾好Google TensorFlow for GPU版本,其间跳坑无数,摔得遍体鳞伤,曾一度怀疑自己廉颇老矣,不能饭也;后,凭借自己多年积累得还算扎实的基本功,终于从无数个坑中爬出,百转千回,成功安装了TensorFLow,如下图:

题外话,图中a+b的输出结果为42是有意为之,因为《银河系漫游指南》中关于生命、宇宙及一切问题的终极答案就是42

先小小庆祝一下,然后再把其中几个大坑记录如下,避免以后再跳:

1. TensorFlow仅支持64位的Ubuntu / Linux、Mac OS X,不支持windows系统;

2. 要安装ubuntu14.04、15.10或者16.04版本,目前这几个版本TensorFlow及GPU运行库CUDA支持,可以省去很多麻烦,切记;

3.硬件环境至少是i3以上,如果要安装GPU版本的TensorFlow的话,显卡必须独显,且显卡必须支持nvdia cuda,要想知道自己的显卡是否支持,请点击这里:https://developer.nvidia.com/cuda-gpus

 4. 安装TensorFlow之前一定要先安装cuda,符合我的机器配置的ubuntu 16.04版本的cuda下载链接为:https://developer.nvidia.com/cuda-downloads
5. 安装cuda之前请一定在系统设置->软件和更新->附加驱动中选择nvidia显卡的最新驱动nvidia-367,这个版本的GeForce GT750显卡驱动(我的本本配置)正好与cuda8.0匹配,如果不是这个版本,请删除掉原来的nvidia驱动,安装cuda时选择安装配套驱动即可;

6. 要下载cuda.run版本安装文件,这个最简单,其它版本能折腾死你都不一定成功;

7. 安装cuda.run之前,一定要关掉图形界面,clt+alt+f1登录到tty界面输入如下指令关掉:
$ sudo service lightdm stop
详细的安装教程参考:http://haiy.github.io/2016/07/17/ubuntu16.04%E4%B8%8AGTX1080%E7%9A%84CUDA%E5%AE%89%E8%A3%85.html

其中一点要注意与教程不同的是,不要考虑gcc版本4.9的问题,我下载的cuda8.0支持ubuntu16.04的gcc5,因此,不需要考虑这个。

8. 千万不要选择源码安装TensorFlow,至少目前是不行的,这个是最大的坑,因为主要问题是国内的网络环境太差,源码安装需要访问国外下载站点下载对应组件,下载总超时,无法正常安装,这个会让你疯掉的;

9. 国内TensorFlow中文社区的更新速度较慢,请尽量访问英文官方网站查看教程,官网地址如下:
https://www.tensorflow.org/

10. 请参考官网教程下载安装TensorFlow,哪里有最新版本下载,同时选择PIP安装,这个是最能达成目标的安装方式,尽量不要尝试其它的,时间耽误不起;

11. PIP安装也存在一个问题,依然是国外下载网站老是超时的问题,请在安装TensorFlow时,调整官方文档给出的安装指令,如下:
官网指令: sudo pip3 install --upgrade $TF_BINARY_URL
国内指令:sudo pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple --timeout=100  --upgrade $TF_BINARY_URL

国内指令增加了超时设置及国内镜像,这样即可避免下载超时问题;

最新文章

  1. 隐马尔科夫模型python实现简单拼音输入法
  2. 将.war文件解压到指定目录
  3. ASP.NET中的Image和ImageButton控件
  4. Oracle指定运行变量
  5. Ubuntu 下 glpk 的安装及使用
  6. 设置启动MyEclipse8.5的时候选择工作区间
  7. Robust PCA via Outlier Pursuit
  8. WEB API系列(一):WEB API的适用场景、第一个实例
  9. JSON.stringify()的深度使用
  10. Shuttle 学习
  11. Learning-Python【3】:Python中的基本运算符
  12. ValueError: total size of new array must be unchanged
  13. js 异步请求
  14. kafka 清除topic数据脚本
  15. 03_java基础(六)之CRUD实现
  16. Unix考古记:一个“遗失”的shell
  17. ubuntu下绝对路径和相对路径的问题
  18. DNS正反向区域解析(二)
  19. Leuze BCL308i 使用方法整理
  20. Windows Server环境下消息队列之ActiveMQ实战

热门文章

  1. sqoop2启动client异常
  2. rocketmq命令【转】
  3. [LuoguP1352][FJSC]没有上司的舞会
  4. 更换php工具箱出现问题 CI框架的问题 【问题解决】
  5. maven install web工程时出错
  6. Java中的集合框架-Collections和Arrays
  7. Oracle索引实现方式
  8. 3.5mm手机插孔自制万能遥控器
  9. iOS 封装一个带复制功能的UILabel
  10. 在Windows下编译mongo-c-driver 1.3.x