Ubuntu安装和卸载CUDA和CUDNN

目录

前言

最近在学习PaddlePaddle在各个显卡驱动版本的安装和使用,所以同时也学习如何在Ubuntu安装和卸载CUDA和CUDNN,在学习过程中,顺便记录学习过程。在供大家学习的同时,也在加强自己的记忆。

卸载CUDA

为什么一开始我就要卸载CUDA呢,这是因为笔者是使用百度深度学习的GPU服务器的,原本就安装了CUDA,不过那不是笔者想要的CUDA版本,笔者需要CUDA 9.0 和 CUDNN 7.0,所以要先卸载原来的CUDA。注意以下的命令都是在root用户下操作的。

卸载CUDA很简单,一条命令就可以了:

apt autoremove cuda

卸载之后,还有一些残留的文件夹,之前安装的是CUDA 8.0。可以一并删除:

cd /usr/local/
rm -rf cuda-8.0/

这样就算卸载完了CUDA。

安装CUDA

安装的CUDA和CUDNN版本:

  • CUDA 9.0
  • CUDNN 7.0

接下来的安装步骤都是在root用户下操作的。

下载和安装CUDA

我们可以在官网:https://developer.nvidia.com/cuda-toolkit-archive,下载对应版本的CUDA。页面如下:
这里写图片描述

选择需要的版本,点击进去。笔者选择的是CUDA Toolkit 9.0,进入到下一个页面开始选择相关信息:
这里写图片描述

注意笔者选择的是网络版本的,这样可以让服务器自己下载安装。最后点击下载:
这里写图片描述

我们下载到了cuda-repo-ubuntu1604_9.0.176-1_amd64.deb这个文件,然后把它上传的服务器中,使用命令是rz,如果读者还没有安装该命令,可以使用以下命令安装:

apt install lrzsz

上传完成之后,开始安装,执行以下命令:

dpkg -i cuda-repo-ubuntu1604_9.0.176-1_amd64.deb

接着执行以下命令:

apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub

最后再执行以下命令就可以安装完成了,如果再安装过程中出现下载错误,可以多尝试几次:

apt-get update
apt-get install cuda

注意:如果上面方式不能安装你指定的版本,可以使用以下的安装命令:

apt-get install cuda-9-0

安装完成之后,可以配置他们的环境变量,在~/.bashrc的最后加上以下配置信息:

export CUDA_HOME=/usr/local/cuda-9.0
export LD_LIBRARY_PATH=${CUDA_HOME}/lib64
export PATH=${CUDA_HOME}/bin:${PATH}

最后使用命令ldconfig使它生效。

可以使用以下命令查看安装的版本信息:

cat /usr/local/cuda/version.txt

下载和安装CUDNN

进入到CUDNN的下载官网:https://developer.nvidia.com/cudnn,然点击Download开始选择下载版本,当然在下载之前还有登录,如何没有账号还有申请一个,选择版本界面如下:
这里写图片描述

如果这里没有想要的版本,还要点击Archived cuDNN Releases选择其他的版本。笔者选择如下:
这里写图片描述

下载之后是一个压缩包,如下:

cudnn-9.0-linux-ppc64le-v7.tgz

然后对它进行解压,命令如下:

tar -zxvf cudnn-9.0-linux-ppc64le-v7.tgz

解压之后可以得到以下文件:

cuda/targets/ppc64le-linux/include/cudnn.h
cuda/targets/ppc64le-linux/NVIDIA_SLA_cuDNN_Support.txt
cuda/targets/ppc64le-linux/lib/libcudnn.so
cuda/targets/ppc64le-linux/lib/libcudnn.so.7
cuda/targets/ppc64le-linux/lib/libcudnn.so.7.0.5
cuda/targets/ppc64le-linux/lib/libcudnn_static.a

然后拷贝这些文件到CUDA下:

cp cuda/targets/ppc64le-linux/lib/* /usr/local/cuda-9.0/lib64/
cp cuda/targets/ppc64le-linux/include/* /usr/local/cuda-9.0/include/

拷贝完成之后,可以使用以下命令查看CUDNN的版本信息:

cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

测试安装结果

到这里就已经完成了CUDA和CUDNN的安装了。可以安装对应的PaddlePaddle的GPU版本测试是否可以正常使用了。安装如下:

pip install paddlepaddle-gpu==0.12.0.post97

然后使用以下的程序测试安装情况:

import paddle.dataset.uci_housing as uci_housing
import paddle.fluid as fluid

with fluid.scope_guard(fluid.core.Scope()):
    # initialize executor with cpu
    exe = fluid.Executor(place=fluid.CUDAPlace(0))
    # load inference model
    [inference_program, feed_target_names,fetch_targets] =  \
        fluid.io.load_inference_model(uci_housing.fluid_model(), exe)
    # run inference
    result = exe.run(inference_program,
                     feed={feed_target_names[0]: uci_housing.predict_reader()},
                     fetch_list=fetch_targets)
    # print predicted price is $12,273.97
    print 'Predicted price: ${:,.2f}'.format(result[0][0][0] * 1000)

如果正常输出一下以下信息,证明已经安装成了:

Predicted price: $12,273.97

参考资料

  1. https://developer.nvidia.com
  2. https://pypi.org/project/paddlepaddle-gpu/#history

猜你喜欢

转载自blog.csdn.net/qq_33200967/article/details/80689543