ubuntu 14.04+ gtx 1070+cuda 8.0 + cudnn 5.1+ tensorflow GPU 踩坑实录

来源:互联网 发布:竞争排斥 知乎 编辑:程序博客网 时间:2024/05/22 11:59

ubuntu下安装tensorflow GPU version还是颇有几个坑的,经过这么一番折腾,基本上把坑都踩遍了,现在记录下来,希望对以后有所帮助。
先说坑吧:

1.nvidia显卡驱动安装
2.nvidia cuda对 pascal架构显卡的支持(当前只能使用cuda 8 rc)
3.cudnn 与cuda 以及显卡驱动的匹配
4.source 安装tensorflow出现的问题。

由于本机使用的是gtx 1070显卡,属于pascal架构,所以只能使用cuda 8 rc,而且cuda 8 rc本身带的是 361的显卡驱动版本,如果想用最新的显卡驱动(如370,367)还是需要自己手动安装的。但是,如果使用deb包先安装显卡驱动,再安装cuda,会导致cuda本身自带的显卡驱动会覆盖最新的显卡驱动,在这里我采用的方法是先安装显卡驱动,再用run文件安装cuda。

1首先下载显卡驱动,到nvidia的官方网站上,选择适合自己系统的显卡驱动,这里我选择的是gtx 1070, linux 64 bit ,US版的,在我下载的时候,Chinese simplified 版本总是直接打开了,然后我的浏览器就崩了,最好还是下载US版本的吧。
这里下载的文件是NVIDIA-Linux-x86_64-367.44.run
这里写图片描述
2.需要先编辑一个blacklist,为了禁用nouveau之类的驱动
编辑sudo vi /etc/modprobe.d/blacklist.conf
在最后加入:
blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv
保存退出
.删除以前的nvidia驱动版本
3.sudo apt-get remove –purge nvidia-*
4.记住自己的下载地址,然后重启电脑,ctrl+alt+F1进入命令行界面
5..关闭lightdm
sudo /etc/inti.d/lightdm stop
(这里我用 sudo service lightdm stop 貌似不行,说stop: unknown instance什么的)
输出应该是:lightdm stop/waiting

6..chmod +x NVIDIA-Linux-x86_64-367.44.run(这里我用的是367.44)
7..各种选项,只要一路同意就行了。
8..reboot
重启之后就可以连接到独立显卡了,如果登录界面成功的话就可以了。
然后就是cuda+cudnn+tensorflow,这里我直接使用的nvidia的教程,还是蛮简单的,而且有效。tensorflow的教程有些问题,每次我followtensorflow的时候,编译出来的东西并没有那么好用,运行的时候会出现floating point exception,所以我怀疑是官方版本更新,导致当前有个bug,这个教程与tensorflow的教程最重要的区别就是,git reset –hard 70de76e 这个命令,退回到了前面一个稳定的版本,对我来说是非常有效的,一次就成功了,祝大家安装顺利。

这里写图片描述
还有一点注意的地方,在选择cudnn版本的时候,这里选择的是5,但是实际安装的时候是5.1, 选择5是没有错的,我也不知道为什么。
注意,这里安装cuda的时候,最好下载run版本,并在提示是否安装nvidia driver的时候选no,切记切记。
除此之外,这个教程还是挺好用的。

How to install tensorflow

0 0
原创粉丝点击