安装Ubuntu18.04+cuda10.0+cuDNN7.4+tensorflow gpu

参考https://medium.com/@cjanze/how-to-install-tensorflow-with-gpu-support-on-ubuntu-18-04-lts-with-cuda-10-nvidia-gpu-312a693744b5(可能需要翻qiang)

本人电脑:Thinkpad T470p    显卡:Nvidia 940MX

注:与本人电脑一样,可以拐了,不建议安装tensorflow-gpu,因为还没有cpu快。。。。

CUDA:    cuda_10.0.130_410.48_linux.run

cuDNN:    libcudnn7_7.4.2.24-1+cuda10.0_amd64.deb

                 libcudnn7-dev_7.4.2.24-1+cuda10.0_amd64.deb

                 libcudnn7-doc_7.4.2.24-1+cuda10.0_amd64.deb

步骤:

1. 先安装Nvidia显卡驱动,cuda10.0至少需要410的驱动,ubuntu18.04据我所知最稳定的是390的驱动, 不过我装了410试了下,似乎没什么问题。

安装410需要添加ppa: sudo add-apt-repository ppa:graphics-drivers/ppa用 ubuntu-drivers devices 查看可以安装的版本,用sudo apt autoinstall 会直接安装recommended版本,这里我选择不安装最新的,因为这里recommend不代表最稳定, 所以选择安装410,  sudo apt install nvidia-410

安装完成重启并可以使用nvidia-smi查看

注意: 两种方式要去分开,一种是从官网上下载安装,属于手动安装;另一种是上文说的方式apt安装。如果已用apt安装有nvidia驱动,再使用手动安装,可能导致系统卡在登录界面一直loop,此时进恢复模式登录root,sudo apt purge nvidia*即可

2. 下载cuda10.0安装

下载地址

修改~/.bashrc,可以使用vim, nano等编辑器添加

export PATH=/usr/local/cuda-10.0/bin${PATH:+:${PATH}}

export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

runfile直接sudo sh cuda_10.[YOURVERSION]_linux.run开始安装

type “no” when asked if you want to “Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 [YOURVERSION]?”

安装完成时会提示,安装未完成,驱动要高于384,这个不用管,是因为你选择了上面所示的问题你选择了no,cuda10.0他要安装的是410.48但是Nvidia提供的是410.78,你没有按照他给的安装,所以这里会警告,不用管。

$ cd ~/NVIDIA_CUDA-10.0_Samples/bin/x86_64/linux/release

$./deviceQuery

用samples测试一下,出现Result = PASS 说明安装完成。

3. 下载安装cuDNN安装

下载地址

下载时没有账号的话需要先注册,然后填写调查问卷,接着就可以下载了

下载三个文件:

libcudnn7_7.4.2.24-1+cuda10.0_amd64.deb

libcudnn7-dev_7.4.2.24-1+cuda10.0_amd64.deb

libcudnn7-doc_7.4.2.24-1+cuda10.0_amd64.deb

用一下命令安装

$ cd ~/Downloads

$ sudo dpkg -i libcudnn7_7.4.2.24-1+cuda10.0_amd64.deb

$ sudo dpkg -i libcudnn7-dev_7.4.2.24-1+cuda10.0_amd64.deb

$ sudo dpkg -i libcudnn7-doc_7.4.2.24-1+cuda10.0_amd64.deb

安装完成后,测试一下

$ cp -r /usr/src/cudnn_samples_v7/ $HOME

$ cd $HOME/cudnn_samples_v7/mnistCUDNN

$ make clean && make

$ ./mnistCUDNN

出现Test:passed!说明安装成功了

4. 安装tensorflow1.13(这里指tf-nightly-gpu)

这里安装tf-nightly-gpu,因为我安装时1.12的tensorflow-gpu会出现can’t import “libcublas.so.9.0”问题

建议先用virtualenv建立虚拟环境,tensorflow官网有

pip install tf-nightly-gpu

有时pip install 下载慢,可以点开pip install时的链接,直接下载whl文件,然后pip install *.whl来安装

5. 测试是否安装成功

$ python -c “import tensorflow as tf; tf.enable_eager_execution(); print(tf.reduce_sum(tf.random_normal([1000, 1000])))”

推荐阅读更多精彩内容