最近看了很多网上的ubuntu安装tensorflow-gpu版本教程,感觉很复杂。
主要问题其实还是cuda cudnn 和tensorflow-gpu版本之间兼容的问题,不同的tf对应不同的cudnn和cuda。下面介绍本人亲测成功的方案
ubuntu16.04 (系统版本无所谓,都行)
anaconda 3
gpu gtx1063
cuda 9.0
cudnn 7.0 (for cuda 9.0)
安装显卡驱动
右上角-->系统设置-->软件和更新-->附加驱动
然后显卡驱动勾上,点应用更改
等下载完后重启一遍,显卡驱动就安装好了,下载terminal里面输入nvidia-smi 来查看
安装cuda
本次教程用的版本是cuda-9.0
传送门:cuda下载地址
下载完了之后,terminal cd到下载目录下面输入一下命令进行安装
sudo dpkg -i cuda-repo-ubuntu1604-9-0-local_9.0.176-1_amd64.deb
sudo apt-get update
sudo apt-get install cuda
然后就完成了
这里可以设置环境变量也可以不设置环境变量(不用设置也能使用tensorflow-gpu)
还是顺便说一下:
export CUDA_HOME=/usr/local/cudaexport PATH=$PATH:$CUDA_HOME/binexport LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
安装cudnn
这个东西下载之前要注册登录一下
传送门:cudnn下载传送门
下载如图:
现在完之后同理,手动解压出来吧,不用命令行了,然后cd到解压目录下面,输入一下命令行,将文件复制到cuda的安装目录下(这些代码是复制粘贴的,亲测有效,一行一行执行,不要着急):
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*
环境变量配置
在terminal中输入
sudo gedit ~/.bash_profile
在文本中输入一下环境变量
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda-9.0/lib64:/usr/local/cuda-9.0/extras/CUPTI/lib64"
export CUDA_HOME=/usr/local/cuda-9.0
最后保存生效在terminal中输入 source ~/.bash_profile
安装tensorflow-gpu
本人安装了anaconda集成环境,直接用pip进行安装,目前tensorflow-gpu最新版本是1.7,但是安装好了无法使用,本人降到1.5版本,可以正常使用
在terminal中输入
pip install tensorflow-gpu==1.5
速度太慢的同学自行百度:pip 阿里源 清华源等等加速下载
安装好了然后利用以下代码进行测试:
import tensorflowas tf
matrix1 = tf.constant([[3., 3.]])
matrix2 = tf.constant([[2.],[2.]])
product = tf.matmul(matrix1, matrix2)
sess = tf.Session()
result = sess.run(product)
print (result)
效果如图:
总结
亲测可用的版本,结合了网上很多大神的方法,自己摸索出来的,不需要什么编译安装,不需要什么降版本gcc,省去了很多麻烦,所有安装包之类的下载之后,安装过程不超过20分钟
本人第一次写简书,如果有写的不好的地方或者更方便的安装方法,可以一起讨论