ubuntu18.04安装nvidia驱动以及cuda10.0,cudnn

显卡驱动安装

注意事项

1.nvidia驱动,cuda,cudnn三者的版本是相互对应的,必须要确保版本一致
2.caffe等库安装时对新版本的cuda11.0+可能不支持,目前建议安装cuda10.0版本及其对应的驱动,注意,如果直接安装了cuda11.0+,后面编译caffe出问题需要全部卸载重装

ubuntu安装NVIDIA驱动.

参考网址
1.https://wiki.archlinux.org/title/NVIDIA_
2.https://wiki.archlinux.org/title/NVIDIA_Optimus_

#查看显卡情况
lspci -k | grep -A 2 -E "(VGA|3D)"

#禁用开源驱动
gedit /etc/modprobe.d/nvidia-blacklists-nouveau.conf

#添加以下内容
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off

#更新并重启
update-initramfs -u &&  reboot

#重启后查看是否禁用 没有输出表明屏蔽成功
lsmod | grep -i nouveau

#安装
apt-get install  nvidia-driver nvidia-xconfig mesa-demos

#查看信息
nvidia-xconfig --query-gpu-info

#修改xorg.conf
gedit /etc/X11/xorg.conf

#改为以下内容
Section "ServerLayout"
    Identifier "layout"
    Screen 0 "nvidia"
    Inactive "intel"
EndSection

Section "Device"
    Identifier "nvidia"
    Driver "nvidia"
    BusID "PCI:1:0:0" #这里是根据上一步的输出信息修改
EndSection

Section "Screen"
    Identifier "nvidia"
    Device "nvidia"
    Option "AllowEmptyInitialConfiguration"
EndSection

Section "Device"
    Identifier "intel"
    Driver "modesetting"
EndSection

Section "Screen"
    Identifier "intel"
    Device "intel"
EndSection


*********************************
#查看正在使用的显示管理器
cat /etc/X11/default-display-manager

#切换显示管理器
sudo dpkg-reconfigure gdm3
或
sudo dpkg-reconfigure lightdm
或
sudo dpkg-reconfigure sddm


#配置显示管理器LightDM

#为 LightDM 显示管理器创建/编辑脚本:
gedit /etc/lightdm/display_setup.sh

#!/bin/sh
xrandr --setprovideroutputsource modesetting NVIDIA-0
xrandr --auto

然后赋予脚本可执行权限:

# chmod +x /etc/lightdm/display_setup.sh

通过编辑 /etc/lightdm/lightdm.conf 的 [Seat:*] 部分配置 LightDM 来运行这个脚本:

# gedit /etc/lightdm/lightdm.conf

[Seat:*]
display-setup-script=/etc/lightdm/display_setup.sh

现在重启,然后显示管理器应该能启动了。
SDDM

为 SDDM 显示管理器创建/编辑脚本(SDDM 是 KDE 的默认显示管理器):

/usr/share/sddm/scripts/Xsetup

xrandr --setprovideroutputsource modesetting NVIDIA-0
xrandr --auto

GDM

要为 GDM 创建启动脚本,请创建两个新的 .desktop 文件,如下:

/usr/share/gdm/greeter/autostart/optimus.desktop
/etc/xdg/autostart/optimus.desktop

[Desktop Entry]
Type=Application
Name=Optimus
Exec=sh -c "xrandr --setprovideroutputsource modesetting NVIDIA-0; xrandr --auto"
NoDisplay=true
X-GNOME-Autostart-Phase=DisplayServer

####################################################################################################################################


#glxinfo | grep NVIDIA

如果不禁用开源驱动会出现开机黑屏,可以开机进入恢复模式,在root模式下输入 sudo apt remove --purge nvidia* ,在reboot重启就好了,然后按照这个链接的办法,复杂的方式安装。

安装完成后如果出现外接显示器可以显示,内置的显示器不能显示的情况,可以如下方式解决:

sudo rm /etc/X11/xorg.conf
sudo reboot

step2 安装cuda

  • 上一步的nvidia-smi已经可以看到cuda版本,这里的版本是向下兼容的。这里我们需要去官网下载对应版本并安装;
  • 下载地址https://developer.nvidia.com/cuda-toolkit-archive;
  • 基本上下载下来按照官网步骤走就可以,注意前面已经安装过显卡驱动,这里提示安装驱动时选择no,或者如下界面不要选择驱动。其他相关都要安装,路径直接回车安装在默认位置就可以;
  • UDA Installer │
    │ - [ ] Driver │
    │ [ ] 460.27.04 │
    │ + [X] CUDA Toolkit 11.2 │
    │ [X] CUDA Samples 11.2 │
    │ [X] CUDA Demo Suite 11.2 │
    │ [X] CUDA Documentation 11.2
  • 这里的细节安装步骤参考https://blog.csdn.net/CAU_Ayao/article/details/83627342;安装10.0我并未降级gcc版本
  • 网络好的话,建议使用runfile安装方式;
  • 安装结束后添加环境变量
sudo gedit ~/.bashrc

打开后输入,注意改成自己的版本

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}} 

执行以下命令可以看到cuda版本

nvcc -V

还不放心可以测试以下例子

cd /usr/local/cuda-10.0/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery

运行后出现相关版本设备信息,且Result = PASS说明没问题了。

step2 安装cudnn

  • 下载cudnn需要注册nvidia账号,然后下载对应cuda版本的cudnn;
    这个官网链接中可以查看合适的版本并下载 https://developer.nvidia.com/rdp/cudnn-archive,需要注意的是,如果要装caffe框架,建议不要下载v8版本以上太新的,并不支持。
    我安装的是
Download cuDNN v7.5.0 (Feb 21, 2019), for CUDA 10.0
  • 下载后先解压缩文件,然后在终端输入
sudo cp cuda/include/cudnn*.h /usr/local/cuda/include  

注意,解压后的文件夹名称为cuda ,将对应文件复制到 /usr/local中的cuda内,并给以权限。

sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

再运行如下命令查看cudnn的安装,若没有显示,可以重启电脑

nvcc –V

安装完可能出现如下类似的符号链接找不到

/sbin/ldconfig.real: /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_ops_train.so.8 is not a symbolic link
/sbin/ldconfig.real: /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8 is not a symbolic link
/sbin/ldconfig.real: /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_adv_train.so.8 is not a symbolic link
/sbin/ldconfig.real: /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8 is not a symbolic link
/sbin/ldconfig.real: /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8 is not a symbolic link
/sbin/ldconfig.real: /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8 is not a symbolic link
/sbin/ldconfig.real: /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn.so.8 is not a symbolic link

解决方法是,对每一个执行

sudo ln -sf /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_ops_train.so.8.2.0 /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_ops_train.so.8
sudo ldconfig

安装caffe

问题甚多,大致参考以下博客
https://blog.csdn.net/CAU_Ayao/article/details/83536320
只要nvidia驱动,cuda,cudnn的对应版本没问题且安装成功,通过各种百度总会解决的,也可以去github上直接搜索别人问过的

你可能感兴趣的:(环境配置,cuda,linux,深度学习)