CUDA安装

环境

  • Ubuntu 16.04

下载文件

CUDA Toolkit 8.0 - Feb 2017,runfile方式安装选runfile[local],下载文件:

  • cuda_8.0.61_375.26_linux.run
  • cuda_8.0.61.2_linux.run

下载Nvidia GPU驱动,根据GPU型号选择,比如:

  • NVIDIA-Linux-x86_64-410.93.run

下载cudnn:

  • libcudnn6_6.0.21-1+cuda8.0_amd64.deb
  • libcudnn6-dev_6.0.21-1+cuda8.0_amd64.deb
  • libcudnn6-doc_6.0.21-1+cuda8.0_amd64.deb

安装过程

  1. 卸载所有跟nvidia有关的驱动

    1
    2
    sudo apt-get purge nvidia*
    sudo nvidia-uninstall
  2. 禁用nouveau,编辑文档/etc/modprobe.d/blacklist-nouveau.conf,加入:

    blacklist nouveau
    options nouveau modeset=0

sudo update-initramfs -u更新nouveau设置

  1. 确认nouveau已被禁用,否则重启
    1
    lsmod | grep nouveau

如果该命令无返回值,则说明nouveau已经禁用

  1. 重启系统

  2. 关闭图形桌面,比如lightdm,用sudo service lightdm stop

  3. 安装驱动

    1
    sudo ./NVIDIA-Linux-x86_64-410.93.run --no-opengl-files --dkms

注意选择安装dkms。

  1. 执行安装CUDA的runfile
    1
    2
    sudo sh ./cuda_8.0.61_375.26_linux.run
    sudo sh ./cuda_8.0.61.2_linux.run

注意,

  • 当问及Install NVIDIA accelerated Graphics Driver for Linux-x86_65 375.26?,选择no
  • 当问及是否安装测试样本时,选择安装
  • 当问及Would you like to run the nvidia-xconfig utility?,选择yes
  • 创建软链接到/usr/local/cuda
  1. 测验,进入测试样本的安装目录NVIDIA_CUDA-8.0_Samples,运行make -j编译,运行在bin目录的多级子目录下的测试程序bin/x86_64/linux/release/deviceQuery,如果看到检测到CUDA表示安装成功

  2. 安装cudnn

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    sudo dpkg -i libcudnn6_6.0.21-1+cuda8.0_amd64.deb

    # to fix '/usr/lib32/nvidia-375/libEGL.so.1 is not a symbolic link' warning,
    sudo mv /usr/lib/nvidia-375/libEGL.so.1 /usr/lib/nvidia-375/libEGL.so.1.org
    sudo mv /usr/lib32/nvidia-375/libEGL.so.1 /usr/lib32/nvidia-375/libEGL.so.1.org
    ls /usr/lib/nvidia-375/ | grep libEGL.so.375 # 获取文件名最后的版本后缀{version}
    sudo ln -s /usr/lib/nvidia-375/libEGL.so.375.{version} /usr/lib/nvidia-375/libEGL.so.1
    sudo ln -s /usr/lib32/nvidia-375/libEGL.so.375.{version} /usr/lib32/nvidia-375/libEGL.so.1
    sudo dpkg -i libcudnn6_6.0.21-1+cuda8.0_amd64.deb
    # fix end

    sudo dpkg -i libcudnn6-dev_6.0.21-1+cuda8.0_amd64.deb
    sudo dpkg -i libcudnn6-doc_6.0.21-1+cuda8.0_amd64.deb
  3. 配置环境变量 vi /etc/profile

    1
    2
    3
    export CUDA_HOME=/usr/local/cuda
    export PATH=$PATH:$CUDA_HOME/bin
    export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

多cuda版本共存、切换

安装不同版本

  1. 删除cuda目录软链接

    1
    2
    3
    4
    # 确认是软链接,别把之前版本的cuda文件误删了
    ls -l /usr/local/cuda

    sudo rm -rf /usr/local/cuda
  2. 上面“安装过程”第7步开始

    切换回原版本

  3. 删除cuda目录软链接

  4. 创建原版本cuda目录软链接

    1
    sudo ln -s /usr/local/cuda-8.0 /usr/local/cuda

相关命令

1
2
3
4
5
6
7
8
# intel gpu 运行情况 
intel_gpu_top

# 查看当前使用的vga kernel驱动
lspci -nnk | grep -i vga -A3 | grep 'in use'

# 查看Nvidia显卡驱动版本
cat /proc/driver/nvidia/version