参考链接:
主参考:ubuntu16.04安装tensorflow-gpu-1.7.1-cuda 9.0+cudnn v7.1+Anaconda3
辅助参考:ubuntu16.04下安装CUDA,cuDNN及tensorflow-gpu
这里系统各项环境为:ubuntu16.04系统,显卡为GTX1080.装的是9.0的CUDA+7.1的CUDNN
开始安装步骤前,需要先确认自己电脑配置:
1.查看显卡(确认你有一个可用CUDA的GPU):$lspci | grep -i nvidia
可以在NVIDIA官网查看自己的GPU是否支持CUDA,下面图箭头是我用的GTX1080,查看支持的GPU地址
2.确认操作系统版本支持CUDA
去官网查看自己的操作系统支持的CUDA版本。CUDA网址
3.查证你是否安装了gcc:$ gcc --version
4.验证kernel headers和development packages
# 查看核
$ uname -r
# 为当前核安装kernel headers和development packages
$ sudo apt-get install linux-headers-$(uname -r)
我因为没有走第4步,导致安装NVIDIA驱动时出现了问题(正式安装中的1.3中安装命令时),不过系统自动对kernel进行处理,自行解决了。
接下来开始正式安装:
第一步:安装NVIDIA驱动
卸载原有驱动:$sudo apt-get remove --purge nvidia*
1.1禁止nouveau驱动启动
编辑文件/etc/modprobe.d/blacklist.conf,使用下面的命令用gedit编辑器打开conf文件
$sudo gedit /etc/modprobe.d/blacklist.conf
在下方添加内容:
blacklist nouveau
保存后退出
执行更新:$sudo update-initramfs -u
重启系统:$reboot
确认是否禁止成功:$lsmod | grep nouveau 没有输出则成功
1.2检查gcc版本
安装nvidia390需要gcc5.4及以上,否则会失败,我这里时5.4,就没升级。
检查gcc版本:$gcc --version
若版本过低则升级gcc:
$sudo apt-get install gcc-5 $sudo apt-get install g++-5
$cd /usr/bin 进入/usr/bin文件夹下 $sudo rm -r gcc 移除之前的软连接 $sudo ln -sf gcc-5 gcc 建立gcc5的软连接 $sudo rm -r g++ 同gcc $sudo ln -sf g++-5 g++
$gcc --version 检查gcc是否升级成功
1.3驱动安装
去官网:链接查看自己的GPU对应的驱动并下载
下载完毕后进行下列步骤:
关闭图形界面:$sudo service lightdm stop
切换到控制台:Ctrl+Alt+F1
进入驱动所在目录,赋予文件可执行权限:$sudo chmod a+x NVIDIA-Linux-x86_64-390.77.run
安装:$sudo ./NVIDIA-Linux-x86_64-390.77.run -no-opengl-files -no-x-check -no-nouveau-check
安装完成后,打开图形界面:$sudo service lightdm start
切换回图形界面:Ctrl+Alt+F7
重启:$reboot
查看驱动是否安装成功:$nvidia-smi 若出现驱动信息则安装成功
注意:有时候没有预期结果,重启后重新查看
第二步:安装CUDA
2.1安装cuda
赋予操作权限:$sudo chmod a+x cuda_9.0.176_384.81_linux.run
安装:$ sudo ./cuda_9.0.176_384.81_linux.run
询问是否安装nvidia驱动时选n,其他均选y
这一步可能会出现磁盘空间不足的问题,若出现,则进行如下操作:
$sudo mkdir *** #找一个空间够的盘,建立路径
$sudo sh cuda_9.0.176_384.81_linux.run --tmpdir=***
2.1补充:我安装CUDA并未按照2.1安装,因为我下载CUDA是下面的图:
按照官方指南,依次输入下面的命令:
这四条命令完成后,接着走2.2即可。
2.2环境配置
配置CUDA环境变量:$sudo gedit ~/.bashrc
在文件最后加入下面两行并保存:
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
使配置生效:$source ~/.bashrc
2.3测试
检查CUDA是否安装成功:
$cd /usr/local/cuda-9.0/samples/1_Utilities/deviceQuery
$sudo make
$./deviceQuery
若出现显卡信息且看到最后一行Result = PASS,则安装成功。
注意:初次不成功的话,可以输入nvidia-smi查看显卡,可能此时会报错,重启后则正差,再次测试则成功。
第三步.CUDNN安装
进入文件目录,解压:$tar zxvf cudnn-9.0-linux-x64-v7.1.tgz
进入解压文件夹:$cd cuda
复制头文件:$sudo cp ./include/cudnn.h /usr/local/cuda/include/
复制库文件:$sudo cp ./lib64/libcudnn* /usr/local/cuda/lib64/
然后命令进入lib64文件夹路径:$cd /usr/local/cuda/lib64/
删除原有动态文件:$sudo rm -rf libcudnn.so libcudnn.so.7
生成软链接:$sudo ln -s libcudnn.so.7.1.4 libcudnn.so.7
$sudo ln -s libcudnn.so.7 libcudnn.so
将路径/usr/local/cuda/lib64添加到动态库:
输入:$sudo gedit /etc/ld.so.conf.d/cuda.conf
添加文字/usr/local/cuda/lib64
保存退出
使链接生效:$sudo ldconfig
验证安装是否成功:$nvcc -V
若出现cuda版本信息则表示安装成功
补充:这里用的是tgz文件,官方下载的可能是deb格式
第四步:Anaconda安装
进入文件目录,赋予执行权限:$sudo chmod a+x Anaconda3-5.2.0-Linux-x86_64.sh
安装:$sudo bash Anaconda3-5.2.0-Linux-x86_64.sh
更新环境变量:$source ~/.bashrc
输入python,出现Anaconda的信息则安装完成
第五步:tensorflow-gpu安装
使用conda命令或者anaconda图形化界面安装tensorflow-gpu即可。