ubuntu16.04安装tensorflow-gpu-1.7.1-cuda 9.0+cudnn v7.1+Anaconda3

准备工作:

从NIVIDIA官网https://www.nvidia.cn/Download/index.aspx?lang=cn下载适用的显卡驱动:NVIDIA-Linux-x86_64-390.77.run

CUDA官网https://developer.nvidia.com/cuda-toolkit下载run文件:cuda_9.0.176_384.81_linux.run

cuDNN下载https://developer.nvidia.com/cudnn(需注册账号):cudnn-9.0-linux-x64-v7.1.tgz

Anaconda下载https://www.anaconda.com/download/下载:Anaconda3-5.2.0-Linux-x86_64.sh

tensorflow下载https://pypi.org/project/tensorflow-gpu/:tensorflow_gpu-1.7.1-cp36-cp36m-manylinux1_x86_64.whl

1.NVIDIA驱动安装:

卸载原有驱动:$sudo apt-get remove --purge nvidia*

1.1禁止nouveau驱动启动:

编辑文件/etc/modprobe.d/blacklist.conf

$sudo gedit /etc/modprobe.d/blacklist.conf

在下方添加内容:

blacklist nouveau

保存后退出

执行更新:$sudo update-initramfs -u

重启系统:$reboot

确认是否禁止成功:$lsmod | grep nouveau 没有输出则成功

1.2检查gcc版本:

安装nvidia390需要gcc5.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驱动安装:

关闭图形界面:$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 若出现驱动信息则安装成功

2.CUDA安装:

CUDA支持的gcc版本较低,因此先对gcc降级,我降到了4.8版本,操作同升级。

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.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,则安装成功。

3.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添加到动态库:

先安装vim:$sudo apt-get install vim-gtk

输入:$sudo vim /etc/ld.so.conf.d/cuda.conf

键盘按i进入编辑状态,添加文字

/usr/local/cuda/lib64

按esc退出编辑状态,键盘输入冒号,输入wq保存退出

使链接生效:$sudo ldconfig

验证安装是否成功:$nvcc -V

若出现cuda版本信息则表示安装成功

4.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的信息则安装完成

5.tensorflow安装:

建立名为tensorflow的conda环境:$conda create -n tensorflow python=3.6

激活tensorflow环境:$source activate tensorflow

更新pip:$pip --default-timeout=100 install --upgrade pip  #--default-timeout=100是为了解决安装过程中read timed out问题

赋予权限:$sudo chmod a+x tensorflow_gpu-1.7.1-cp36-cp36m-manylinux1_x86_64.whl

安装:$pip --default-timeout=100 install tensorflow_gpu-1.7.1-cp36-cp36m-manylinux1_x86_64.whl

测试:输入python回车,import tensorflow没有报错则安装成功

关闭tensorflow环境:$source deactivate tensorflow

最后:

关闭tensorflow环境后,在系统中的python下导入tensorflow会报错,显示No module named tensorflow

解决方案:将conda中tensorflow的第三方包文件拷贝到Anaconda的Python目录下:

$sudo rm -rf ~/anaconda3/lib/python3.6/site-packages

$sudo cp -r ~/.conda/envs/tensorflow/lib/python3.6/site-packages ~/anaconda3/lib/python3.6/site-packages

测试:

$python

>>>import tensorflow

没有报错,至此安装完成。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值