ubuntu16.04下的tensorflow源码安装,踩坑&填坑记录[ubuntu16.04+GTX960+CUDA8.0+cuDNN5.1.5]
2016-11-28 23:05
483 查看
2017.2.26添加: tensorflow1.0已出, ubuntu16.04 + CUDA8.0 + GTX960 + tensorflow1.0直接装好CUDA以及cudnn,pip install即可。
下面是几个主要参考的网站:
tensorflow官网
tensorflow的GITHUB网址
我爱自然语言处理
ubuntu论坛
谷歌搜索引擎
方法:
2.1. 安装驱动
2.2. 安装CUDA
2.3. 安装cuDNN
2.4. 安装bazel
2.5. 安装tensorflow
注:
1. 建议选用361及以后版本(因为CUDA8.0的默认驱动为361)
2. 想要获得更多的驱动版本选择,可以加入nvidia的ppa
3. 加入ppa之后可以直接安装驱动
4. 终端安装驱动可能会出现需要同意协议等界面,使用Tab,Shift,Enter按钮操作,此方法对于所有终端安装软件情况适用。
5. 建议加入ppa之后到附加驱动中安装驱动,因为如果安装版本不对,可能造成不可预料的后果,详见踩坑&填坑实录1
在驱动安装的部分,上文要求安装几个软件,作者并不知道有什么用,但仍然安装了。
其他可以参照上文安装,这里仅注明几个心得:
1. deb确实问题多多,亲测
2. 在询问是否安装驱动那里要选n。如果选择了y,正常情况在终端里是运行失败的,但如果运行成功,请参照踩坑&填坑实录1。
3.
4. 加入
5. 测试的时候,有些测试需要
6. 有时候ubuntu重启的时候nvidia的驱动会挂掉,可以采取重启或者重装的方法。作者采用了附加驱动的安装方法之后就没有遇到过这个问题。
注:
1. 下载Linux的tgz版本,不要下载deb或者run版本。
2. 复制的路径是cuda安装的路径,应该和你的PATH中CUDA指向路径一致。
注:
1. bazel官网的ubuntu安装法安装的是0.4.0版本,此版本无法编译tensorflow0.11。如需编译tensorflow0.11,请按照installer安装法安装0.3.2版本。
2. 请严格按照bazel中的要求安装jdk,详见踩坑&填坑实录2
3. bazel的installer安装方法中的–user不可省略,且安装之后需要修改.bashrc文件使得bazel安装成功。
下面记录一些心得:
1. ./configure过程中遇到com.google….错误:bazel安装失败,详见踩坑&填坑实录2.
2. ./configure的时候还遇到一个有关test的错误(具体未记录,已遗忘):bazel版本错误,详见github的issue板块。
3. bazel build失败,可能是驱动挂了,请自行检查,重复上述步骤。
4. pip install的whl名称会根据平台变化,请到
5. 请完整完成官网的全部过程,包括Setting up TensorFlow for Development,才可以在交互式环境使用。
6. 如果安装的是tensorflow0.11版本,那么tutorial里mnist的fully_connected.py是有错误的,这是因为版本之间对于函数的定义不同导致。
进入tty界面:ctrl+alt+F1-F6皆可
1.1. 退出使用ctrl+alt+F7
1.2. 重启使用sudo reboot
1.3. 中文乱码的解决:fbterm
具体详见在linux安装搜狗输入法和fbterm解决ubuntu 14.04 tty终端中文显示和输入
卸载原有驱动
安装驱动
按照上文安装驱动的方法,如果和作者环境相同,那nvidia-367应该没问题
启动lightdm(如果为了安装驱动,曾经关闭过得话)
4.1. lightdm是用来管理登录系统的,会调用X.org,在安装CUDA时安装驱动,就会要求进入tty界面,然后关闭X.org程序。
4.2. lightdm的关闭与开启
删除所有找到的文件皆可
bazel clean失败
bazel的缓存位于
当前ubuntu16.04以及CUDA8.0都还未成熟,所以安装过程遇到很多坑。本文是踩坑&填坑实录,只针对于使用ubuntu16.04并使用GTX960及以上显卡的情况。对于使用ubuntu14.04或者可以使用CUDA7.5的情况,有更方便的方法,具体请参照tensorflow的官网。
为什么使用ubuntu16.04:
因为同时存在UEFI模式的win10系统,且想保留secure boot(后来装驱动还是关掉了,但保留了fast boot)。
为什么使用CUDA8.0:
因为GTX960只支持CUDA8.0及以上,而且CUDA8.0比7.5速度快很多。
为什么源码安装:
因为官网当前的whl不支持ubuntu16.04+CUDA8.0+cuDNN5.1.5,需要自己编译。
为什么使用tensorflow-master:
因为作者小白,想要从tutorial开始学习,而tutorial中的某些代码不被tensorflow0.11支持;且编译tensorflow0.11需要bazel0.3.2版本,而作者当时已经安装好了0.4版本。
虽然文章都是我自己写的,但是很多知识都是从网上学的,这次没有引用,感觉不安;如有侵权,烦请通知,自会注明或者删除。
心得部分很多都是我自己对事情的理解,作者对ubuntu和tensorflow都不甚了解,还望不吝赐教,相互交流,共同学习。
写在前面:
本文作者水平有限,难免有诸多错误,还请各位大神不吝赐教。下面是几个主要参考的网站:
tensorflow官网
tensorflow的GITHUB网址
我爱自然语言处理
ubuntu论坛
谷歌搜索引擎
系统环境
ubuntu16.04.1+GTX960+CUDA8.0+cuDNN5.1.5+tensorflow-master目标&方法简介
目标:安装tensorflow方法:
2.1. 安装驱动
2.2. 安装CUDA
2.3. 安装cuDNN
2.4. 安装bazel
2.5. 安装tensorflow
详细步骤
1. 安装驱动
打开设置–>软件和更新–>附加驱动,选取合适的nvidia的专有驱动。作者选用的是nvidia-367.53。注:
1. 建议选用361及以后版本(因为CUDA8.0的默认驱动为361)
2. 想要获得更多的驱动版本选择,可以加入nvidia的ppa
sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt-get update
3. 加入ppa之后可以直接安装驱动
sudo apt-get install nvidia-367
4. 终端安装驱动可能会出现需要同意协议等界面,使用Tab,Shift,Enter按钮操作,此方法对于所有终端安装软件情况适用。
5. 建议加入ppa之后到附加驱动中安装驱动,因为如果安装版本不对,可能造成不可预料的后果,详见踩坑&填坑实录1
2. 安装CUDA
这个部分参照的是深度学习主机环境配置: Ubuntu16.04+Nvidia GTX 1080+CUDA8.0。在驱动安装的部分,上文要求安装几个软件,作者并不知道有什么用,但仍然安装了。
sudo apt-get install mesa-common-dev sudo apt-get install freeglut3-dev
其他可以参照上文安装,这里仅注明几个心得:
1. deb确实问题多多,亲测
2. 在询问是否安装驱动那里要选n。如果选择了y,正常情况在终端里是运行失败的,但如果运行成功,请参照踩坑&填坑实录1。
3.
-tmpdir=/opt/temp/的部分我没有加,也没有问题,个人觉得可能和电脑配置有关。
4. 加入
PATH以及
LD_LIBRARY_PATH的部分,上文给出的
/usr/local/cuda-8.0的路径,但是官网以及其他博客都是使用
/usr/local/cuda路径,不知道会有什么影响,作者采用了后者。
5. 测试的时候,有些测试需要
sudo的权限,才可以正常测试。
6. 有时候ubuntu重启的时候nvidia的驱动会挂掉,可以采取重启或者重装的方法。作者采用了附加驱动的安装方法之后就没有遇到过这个问题。
3. 安装cuDNN
请严格按照tensorflow官网的要求安装,tar xvzf cudnn-8.0-linux-x64-v5.1-ga.tgz sudo cp cuda/include/cudnn.h /usr/local/cuda/include sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64 sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
注:
1. 下载Linux的tgz版本,不要下载deb或者run版本。
2. 复制的路径是cuda安装的路径,应该和你的PATH中CUDA指向路径一致。
4. 安装bazel
请按照bazel官网安装注:
1. bazel官网的ubuntu安装法安装的是0.4.0版本,此版本无法编译tensorflow0.11。如需编译tensorflow0.11,请按照installer安装法安装0.3.2版本。
2. 请严格按照bazel中的要求安装jdk,详见踩坑&填坑实录2
3. bazel的installer安装方法中的–user不可省略,且安装之后需要修改.bashrc文件使得bazel安装成功。
5. 安装tensorflow
请严格按照官网安装。下面记录一些心得:
1. ./configure过程中遇到com.google….错误:bazel安装失败,详见踩坑&填坑实录2.
2. ./configure的时候还遇到一个有关test的错误(具体未记录,已遗忘):bazel版本错误,详见github的issue板块。
3. bazel build失败,可能是驱动挂了,请自行检查,重复上述步骤。
4. pip install的whl名称会根据平台变化,请到
/tmp/tensorflow_pkg/目录下自行查看。
5. 请完整完成官网的全部过程,包括Setting up TensorFlow for Development,才可以在交互式环境使用。
6. 如果安装的是tensorflow0.11版本,那么tutorial里mnist的fully_connected.py是有错误的,这是因为版本之间对于函数的定义不同导致。
踩坑&填坑实录
1. 驱动安装错误导致的循环登录
循环登录的情况很多,下面仅针对因为驱动错误导致的循环登录。进入tty界面:ctrl+alt+F1-F6皆可
1.1. 退出使用ctrl+alt+F7
1.2. 重启使用sudo reboot
1.3. 中文乱码的解决:fbterm
sudo apt-get install fbterm sudo fbterm
具体详见在linux安装搜狗输入法和fbterm解决ubuntu 14.04 tty终端中文显示和输入
卸载原有驱动
sudo apt-get purge nvidia-*
安装驱动
按照上文安装驱动的方法,如果和作者环境相同,那nvidia-367应该没问题
启动lightdm(如果为了安装驱动,曾经关闭过得话)
4.1. lightdm是用来管理登录系统的,会调用X.org,在安装CUDA时安装驱动,就会要求进入tty界面,然后关闭X.org程序。
4.2. lightdm的关闭与开启
sudo lightdm start || sudo service lightdm start sudo lightdm stop || sudo service lightdm stop
2. bazel安装失败
bazel的卸载sudo find / -name "*bazel*"
删除所有找到的文件皆可
bazel clean失败
bazel的缓存位于
~/.cache/bazel
apt-get install default-jdk会导致bazel安装失败,应安装规定版本
后记
博客写作时间:2016-11-26.当前ubuntu16.04以及CUDA8.0都还未成熟,所以安装过程遇到很多坑。本文是踩坑&填坑实录,只针对于使用ubuntu16.04并使用GTX960及以上显卡的情况。对于使用ubuntu14.04或者可以使用CUDA7.5的情况,有更方便的方法,具体请参照tensorflow的官网。
为什么使用ubuntu16.04:
因为同时存在UEFI模式的win10系统,且想保留secure boot(后来装驱动还是关掉了,但保留了fast boot)。
为什么使用CUDA8.0:
因为GTX960只支持CUDA8.0及以上,而且CUDA8.0比7.5速度快很多。
为什么源码安装:
因为官网当前的whl不支持ubuntu16.04+CUDA8.0+cuDNN5.1.5,需要自己编译。
为什么使用tensorflow-master:
因为作者小白,想要从tutorial开始学习,而tutorial中的某些代码不被tensorflow0.11支持;且编译tensorflow0.11需要bazel0.3.2版本,而作者当时已经安装好了0.4版本。
心得
这次安装过程中从网上各位大神的博客里收益良多,也感慨中文资源的匮乏。以后应该会培养写博客的习惯,但是这个CSDN的编辑器感觉并不是很舒适,不知道能不能坚持下来。虽然文章都是我自己写的,但是很多知识都是从网上学的,这次没有引用,感觉不安;如有侵权,烦请通知,自会注明或者删除。
心得部分很多都是我自己对事情的理解,作者对ubuntu和tensorflow都不甚了解,还望不吝赐教,相互交流,共同学习。
相关文章推荐
- ubuntu16.04+gtx1060+cuda8.0+tensorflow源码安装、测试经历
- Ubuntu16.04下安装CUDA8.0和tensorflow
- Ubuntu16.04+CUDA8.0+cudnn5.1+TensorFlow-GPU详细安装步骤
- buntu16.04 源码安装CUDA8.0 tensorflow GPU 踩坑记
- ubuntu16.04安装+cuda8.0+cudnn5.1+MXNET gpu版本安装+tensorflow gpu版本安装+chainerGPU版本安装
- Ubuntu 16.04 + CUDA 8.0 + cuDNN v5.1 + TensorFlow(GPU support)安装配置详解
- Ubuntu16.04下安装CUDA8.0和tensorflow
- ubuntu16.04+cuda8.0+cudnn5.1+caffe 安装(基于独立主机&集成显卡&GTX1080Ti)
- Ubuntu 16.04 + cuda8.0 + opencv3 + caffe的安装,tensorflow-gpu的安装
- ubuntu16.04安装cuda8.0+cuDNN6.0+tensorflow1.4配置过程
- 初用Linux, 安装Ubuntu16.04+NVIDIA387+CUDA8.0+cudnn5.1+TensorFlow1.0.1
- 从零开始安装TensorFlow1.0+keras(Ubuntu16.04+CUDA8.0+Cudnn5.1+TITANX)
- Ubuntu 14.04 源码安装Tensorflow 1.0 (CUDA8.0 or CUDA7.5 or CUDA7.0 版本)
- ubuntu16.04:cuda8.0+python3.5+tensorflow1.4+opencv3.2安装说明
- Ubuntu16.04下安装CUDA8.0和tensorflow
- Ubuntu 16.04下安装Cuda 8.0, Anaconda 4.4.0和TensorFlow 1.2.1
- Ubuntu 16.04安装NVIDIA显卡驱动 、CUDA-8.0、cuDNN和TensorFlow问题及解决方法
- Ubuntu16.04+cuda-8.0+cudnn-v5.1+tensorflow0.8-gpu/tensorflow1.0-gpu安装教程
- Ubuntu 16.04+Gtx1050Ti+cuda 8.0+cudnn 5.1 tensorflow 安装
- ubuntu16.04 安装CUDA 8.0 和 cuDNN 5.1 /cudnn6.0,可适用于gpu版本的(tensorflow,caffe,mxnet)