ubuntu安装gpu版tensorflow(注意所安装的版本)
1.安装nvidia显卡驱动
首先安装nvidia驱动,很多教程都说要卸载原来的驱动,安装官方最新的,经博主实际测试发现完全没必要,如果卸载重装还可能导致图形界面无法启动的情况,经验不足的话甚至无法修复,只能重装系统。因此完全没必要,直接利用ubuntu的软件更新器选择nvidia驱动即可。
如下图所示,打开software & updates→ Additional Drivers ,初次打开经过几分钟的等待会显示系统推荐的驱动,选择其推荐的进行安装即可。
然后命令行执行:
nvidia-smi
看到以上信息表示安装成功。
2.安装cuda8.0
去官方下载cuda8.0,https://developer.nvidia.com/cuda-downloads?target_os=Linux,官方的是9.1最新版,历史版本在Legacy Releases下,点击进入选择CUDA Toolkit 8.0 GA1下载。
然后执行:
sudo ./cuda_8.0.44_linux.run
前面会显示大量的协议,按住enter不放直到跳过协议,然后按照提示选是或否即可。
注意:在遇到Install NVIDIA Accelerated Graphics Driver for xxx时,一定要选no,因为已经安装了显卡,就无需再安装了。其他都选默认即可,没有默认就选yes
安装结束后,修改环境变量/etc/profile文件,追加如下内容:
export PATH=$PATH:/usr/local/cuda/bin export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
然后进入cuda 8.0 sample目录(默认在~目录下),然后依次执行:
cd 1_Utilities/deviceQuery ./deviceQuery
没有问题出现如下信息:
可以看到Detected 1 CUDA Capable device,即安装成功。
3.安装cudnn6.0
去https://developer.nvidia.com/rdp/cudnn-archive 下载cudnn v6.0 for CUDA8.0,如图所示选择cuDNN v6.0 Library for Linux
解压后执行:(cp -a 会保存软连接,否则还要手动创建)
sudo cp -a cuda/include/cudnn.h /usr/local/cuda/include/ sudo cp -a cuda/lib64/libcudnn* /usr/local/cuda/lib64/ sudo chmod a+r /usr/local/cuda/include/cudnn.h sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
注:这里一定要选择6.0版本,否则后面会出现版本不匹配的问题,报错:ImportError: libcudnn.so.6: cannot open shared object file: No such file or directory(即tensorflow1.3以上版本要求使用cudnn6.0版本)
4.安装tensorflow1.4
下载tensorflow-gpu==1.4,https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.4.0-cp27-none-linux_x86_64.whl,将链接最后的版本号1.4.0换成对应的版本可下载指定的版本。
注:tensorflow1.5以上仅支持cuda9,因此只能安装1.4版本的,否则报错:ImportError: libcublas.so.9.0: cannot open shared object file: No such file or directory
下载完毕之后执行:
sudo pip install tensorflow_gpu-1.4.0-cp27-none-linux_x86_64.whl
5.验证
写个简单的python脚本,只要import tensorflow不报错即安装成功。然后就可以将之前写的deep learning训练代码用支持gpu的tf运行,可以感觉明显的提速。