NVIDIA CUDA 安装指南 ( Ubuntu )

本教程将

System Requirements

  • CUDA-capable GPU
  • A supported version of Linux with a gcc compiler and toolchain
  • NVIDIA CUDA Toolkit

##

  1. 确认计算机是否存在GPU
    1
    2
    $ lspci | grep -i nvidia
    01:00.0 VGA compatible controller: NVIDIA Corporation GP106M [GeForce GTX 1060 Mobile] (rev a1)

备注:上面标准输出显示本机存在型号为:GeForce GTX 1060 的NVIDIA GPU

  1. 确认Linux系统版本是否支持
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    $ uname -m && cat /etc/*release
    x86_64
    DISTRIB_ID=Ubuntu
    DISTRIB_RELEASE=16.04
    DISTRIB_CODENAME=xenial
    DISTRIB_DESCRIPTION="Ubuntu 16.04.6 LTS"
    NAME="Ubuntu"
    VERSION="16.04.6 LTS (Xenial Xerus)"
    ID=ubuntu
    ID_LIKE=debian
    PRETTY_NAME="Ubuntu 16.04.6 LTS"
    VERSION_ID="16.04"
    HOME_URL="http://www.ubuntu.com/"
    SUPPORT_URL="http://help.ubuntu.com/"
    BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
    VERSION_CODENAME=xenial
    UBUNTU_CODENAME=xenial

备注:上面标准输出显示本机系统版本为:Ubuntu 16.04.6 LTS (Xenial Xerus),支持。

  1. 确认系统已安装gcc且gcc版本支持
    1
    2
    3
    4
    5
    $ gcc --version
    gcc (Ubuntu 5.4.0-6ubuntu1~16.04.11) 5.4.0 20160609
    Copyright (C) 2015 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions. There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

备注:上面标准输出显示本机gcc版本为5.4.0,支持。

  1. Verify the System has the Correct Kernel Headers and Development Packages Installed

    1
    2
    $ uname -r
    4.15.0-50-generic
  2. 下载CUDA安装包,选择网络安装(个人决定,本教程以网络安装,也可本地安装)

  3. 按如下命令安装
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $ sudo dpkg -i cuda-repo-ubuntu1604_10.1.168-1_amd64.deb
    Selecting previously unselected package cuda-repo-ubuntu1604.
    (Reading database ... 292188 files and directories currently installed.)
    Preparing to unpack cuda-repo-ubuntu1604_10.1.168-1_amd64.deb ...
    Unpacking cuda-repo-ubuntu1604 (10.1.168-1) ...
    Setting up cuda-repo-ubuntu1604 (10.1.168-1) ...
    The public CUDA GPG key does not appear to be installed.
    To install the key, run this command:
    sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
1
2
3
4
5
6
7
8
9
$ sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
Executing: /tmp/tmp.KOjHA0Rm03/gpg.1.sh --fetch-keys
http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
gpgkeys: no key data found for http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0
gpg: keyserver communications error: key not found
gpg: keyserver communications error: bad public key
gpg: WARNING: unable to fetch URI http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub: bad public key
  1. 上面标准输出显示添加key请求url失败。可通过如下方式替代执行:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    $ wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
    --2019-05-20 19:23:23-- http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
    Resolving developer.download.nvidia.com (developer.download.nvidia.com)... 128.1.83.59, 128.1.83.19, 128.1.83.21, ...
    Connecting to developer.download.nvidia.com (developer.download.nvidia.com)|128.1.83.59|:80... connected.
    HTTP request sent, awaiting response... 301 Moved Permanently
    Location: https://developer.download.nvidia.cn/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub [following]
    --2019-05-20 19:23:23-- https://developer.download.nvidia.cn/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
    Resolving developer.download.nvidia.cn (developer.download.nvidia.cn)... 61.147.234.144
    Connecting to developer.download.nvidia.cn (developer.download.nvidia.cn)|61.147.234.144|:443... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 1633 (1.6K) [application/octet-stream]
    Saving to: ‘7fa2af80.pub’
    7fa2af80.pub 100%[======================================================================================================>] 1.59K --.-KB/s in 0s=
    2019-05-20 19:23:24 (518 MB/s) - ‘7fa2af80.pub’ saved [1633/1633]
    $ sudo apt-key add 7fa2af80.pub
    OK
1
2
$ sudo apt-get update
$ sudo apt-get install cuda

安装cuDNN

  1. 安装依赖-NVIDIA显卡驱动R418及以上
    • (推荐)在安装好CUDA后,可以直接在Ubuntu系统Setting->Soft&Updates->Additional Drivers中,选择R418显卡驱动,然后点击“Apply Changes”。(本教程选择该种方法)
    • 可以在NVIDIA显卡驱动下载页选择相应GPU版本,系统版本对应的NVIDIA显卡驱动进行下载安装。
  2. 安装显卡驱动兼容的CUDA 10.1(本教程更新时最新版本)

    安装依赖-NVIDIA显卡驱动R418

  3. 安装cuDNN
    cuDNN下载链接下载以下三个文件。
  4. cuDNN Runtime Library for Ubuntu16.04 (Deb)
  5. cuDNN Developer Library for Ubuntu16.04 (Deb)
  6. cuDNN Code Samples and User Guide for Ubuntu16.04 (Deb)

在下面的教程中:

  • CUDA默认安装目录为:/usr/local/cuda/
  • cudnn下载目录假设为:<cudnnpath>

进入包含上述下载的三个文件的目录,解压cuDNN包:

1
2
3
$ cd <cudnnpath>
$ tar -xvf cudnn-9.0-linux-x64-v7.tgz
$

Reference

  1. cudnn安装官网参考链接
  2. cuda安装官网参考链接

References

0%