1.安装前准备工作

1.1确认GPU型号和操作系统版本

1.2准备gpu驱动和CUDA软件包

在nvidia官网进行驱动包下载

GPU驱动下载链接:https://www.nvidia.cn/Download/index.aspx?lang=cn

linux系统均选择 Linux 64-bit

CUDA Toolkit选择最新版本,注意该版本一定要大于等于cuda软件的版本。

选择CUDA及GPU驱动版本,需同时考虑与客户程序的兼容性问题。

CUDA 10.1/10.2可以搭配CUDA toolkit 10.2版本的GPU驱动。

CUDA 11.0 建议搭配CUDA CUDA toolkit 11.0版本的GPU驱动


CUDA下载链接:https://developer.nvidia.com/cuda-downloads

选择合适的操作系统版本进行下载。


1.3检查服务器GPU识别情况

安装GPU驱动之前需要在操作系统下查看GPU卡是否能够完全识别,如不能识别需要进行重新插拔、对调测试等步骤进行硬件排查。

#确保可以查看到所有的GPU

# lspci | grep -i nvidia


1.4老版本软件包卸载

若安装过其他版本的GPU驱动或CUDA,请先卸载。

GPU驱动卸载方法:

# /usr/bin/nvidia-uninstall

CUDA卸载方法:

# /usr/local/cuda-X.Y/bin/cuda-uninstaller


或(老版本卸载方法)

# /usr/local/cuda-X.Y/bin/uninstall_cuda_X.Y.pl

1.5安装gcc、g++编译器

GPU驱动安装时需要gcc编译器。

cuda安装samples测试程序进行make时需要g++,但安装cuda软件包时不需要。

CentOS 7:

#检查版本

    gcc -v

    g++ -v

#软件包安装

# yum install gcc

# yum install gcc-c++

SUSE:

#检查版本

gcc -v

g++ -v

#软件包安装

zypper in gcc

zypper in gcc-c++

Ubuntu:

#检查版本

# gcc -v

# g++ -v

#软件包安装

# gpt-get install gcc

# gpt-get install g++

# apt-get install make

#软件包检查

# dpkg -l gcc

# dpkg -l g++

# dpkg -l make

1.6安装kernel-devel和kernel-headers软件包

CentOS 7:

# yum install kernel-devel-$(uname -r) kernel-headers-$(uname -r)

Ubuntu:

#Ubuntu可以不安装,也可以从阿里镜像站或网易镜像站下载,需注意内核版本。

SUSE:

zypper install kernel-source-$(uname -r) #只安装这一个即可

zypper install kernel-default-devel-$(uname -r)


1.7禁用系统自带的nouveau模块

检查nouveau模块是否加载,已加载则先禁用

# lsmod | grep nouveau


CentOS 7:

#没有blacklist-nouveau.conf文件则创建

# vim /usr/lib/modprobe.d/blacklist-nouveau.conf blacklist nouveau

options nouveau modeset=0

执行如下命令使内核生效(需要重启服务器后才可真正禁用nouveau)

# dracut -force

Ubuntu:

vi /etc/modprobe.d/blacklist.conf

在文本最后添加以下内容:

blacklist nouveau

options nouveau modeset=0

保存退出,执行以下命令生效:

# update-initramfs -u

1.8重启操作系统

1)修改系统运行级别为文本模式

GPU驱动安装必须在文本模式下进行

CentOS 7

# systemctl set-default multi-user.target

Ubuntu:

systemctl stop lightdm

systemctl set-default multi-user.target(也可以不执行此命令)

然后ctrl+alt+F1 切换到其他字符终端窗口(F7为图形中断窗口),或者init 3

SUSE:

vim /etc/inittab

修改

id:5:initdefault:


id:3:initdefault:

2)重启系统后,使禁用nouveau模块配置生效并进入文本模式


2.GPU驱动安装

1)root用户下进行GPU驱动

# chmod +x NVIDIA-xxx.run

# ./NVIDIA-Linux-x86_64-390.46.run –no-opengl-files –ui=none –no-questions –accept-license

2)配置GPU驱动内存常驻模式

GPU驱动模式设置为常驻内存:

# nvidia-smi -pm 1

设置开机自启动

vim /etc/rc.d/rc.local

在文件中添加一行

nvidia-smi -pm 1

赋予/etc/rc.d/rc.local文件可执行权限

# chmod +x /etc/rc.d/rc.local

#若无/etc/rc.d/rc.local,也可修改

vim /etc/rc.local

chmod +x /etc/rc.local

================================================

ubuntu 18.04 配置内存常驻模式开机自启动。

https://blog.csdn.net/ererfei/article/details/98205463

创建文件: vi /etc/systemd/system/rc-local.service

[Unit]

Description=/etc/rc.local Compatibility

ConditionPathExists=/etc/rc.local

[Service]

Type=forking

ExecStart=/etc/rc.local start

TimeoutSec=0

StandardOutput=tty

RemainAfterExit=yes

SysVStartPriority=99

[Install]

WantedBy=multi-user.target

创建文件: vi /etc/rc.local

#!/bin/sh -e

nvidia-smi -pm 1

exit 0

赋予可执行权限

chmod +x /etc/rc.local

启动服务并设置服务开机自启动

systemctl enable rc-local.service

systemctl start rc-local.service

systemctl status rc-local.service

重启系统后验证

=================================================

#SUSE

vim /etc/init.d/after.local #没有就新建

nvidia-smi -pm 1

chmod +x /etc/init.d/after.local

nvidia-smi

安装完GPU驱动后,可以使用nvidia-smi命令进行GPU状态查看及相关配置。

    3.CUDA安装

    1)安装CUDA

    安装CUDA时需注意,如果之前安装过GPU驱动,安装CUDA时就不要再选择GPU驱动安装了。

    chmod +x cuda-xxx.run

    ./cuda-xxx.run –no-opengl-libs

    新版本CUDA安装界面:

    注意Driver选项,表示是否安装GPU驱动,如果之前已经安装了GPU驱动,这里不要再勾选。


    旧版本CUDA安装:

    [root@ localhost ~]# ./cuda-xxx.run –no-opengl-libs

    … … … …

    … … … … ####约定条款,此处忽略打印

    —————–

    Do you accept the previously read EULA?

    accept/decline/quit: accept

    Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 387.26?

    (y)es/(n)o/(q)uit: n ###若已经安装过驱动,则此处不需再安装

    Install the CUDA 9.2 Toolkit?

    (y)es/(n)o/(q)uit: y

    Enter Toolkit Location

    [ default is /usr/local/cuda-9.1 ]: ####回车,默认

    Do you want to install a symbolic link at /usr/local/cuda?

    (y)es/(n)o/(q)uit: y

    Install the CUDA 9.2 Samples?

    (y)es/(n)o/(q)uit: y ##安装samples

    To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-9.2/bin

    To uninstall the NVIDIA Driver, run nvidia-uninstall

    Please see CUDA_Installation_Guide_Linux.pdf in /usr/local/cuda-9.2/doc/pdf for detailed information on setting up CUDA.

    Logfile is /tmp/cuda_install_62403.log

    ####安装完成,如果安装失败,查看上述提示日志信息。

    2)配置环境变量

    添加到/etc/profile文件中,对所有用户生效

    # vim /etc/profile

    export PATH=/usr/local/cuda/bin:$PATH

    export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

    # source /etc/profile

    测试cuda安装是否正确,环境变量是否识别成功

    # nvcc -V