基于Centos 7.3系统下的CUDA、cuDNN配置

从网上找了几个教程,安装过程都出现了error,之后结合了几个教程才把Nvidia的驱动安装成功,以此来记录一下安装的教程。一下操作需在root权限下进行。

1.Nvidia显卡驱动安装

升级系统

# 1\. 先来全系统升级与安装所需要的编译程序与环境;
[root@study ~]# yum update
[root@study ~]# yum groupinstall "Development Tools"
[root@study ~]# yum install kernel-devel kernel-headers

没有wget的话安装wget:

  Yum –y install wget

查询硬件

首先确认机器的硬件设备,查看是否有相应的显卡。简单查询的方法可以使用lspci,具体操作如下:

[root@study ~]# lspci | grep -Ei '(vga|display)'

查看Nvidia显卡 lspci | grep ‘NVIDIA’

 

添加ELRepo源

首先是添加密钥:

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

然后是对应Centos7.3安装ELRepo:

   rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

安装显卡检查程序:

yum install nvidia-detect

运行nvidia-detect检测nvidia所需要的驱动,输出如下:

Knod-nvidia

搜索nvidia驱动:

yum search nvidia

 

取消nouveau模块的载入

因为这部系统是新安装的,所以没有我们虚拟机里面已经安装好所有需要的环境了。因此,我们建议你最好是做好系统升级的动作, 然后安装所需要的编译环境,最后还得要将 nouveau 模块排除使用!因为强迫系统不要使用 nouveau 这个驱动,这样才能够完整的让 nvidia 的驱动程序运行! 那就来瞧瞧怎么作啰!

 

# 1\. 开始处理不许载入 nouveau 模块的动作!
[root@study ~]# vim /etc/modprobe.d/blacklist.conf  # 这文件默认应该不存在
blacklist nouveau
options nouveau modeset=0
 
[root@study ~]# vim /etc/default/grub
GRUB_CMDLINE_LINUX="vconsole.keymap=us crashkernel=auto  vconsole.font=latarcyrheb-sun16 
  rhgb quiet rd.driver.blacklist=nouveau nouveau.modeset=0"
# 在 GRUB_CMDLINE_LINUX 设置里面加上 rd.driver.blacklist=nouveau nouveau.modeset=0 的意思!
[root@study ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
[root@study ~]# reboot
 
[root@study ~]# lsmod | grep nouveau

# 最后要没有出现任何模块才是对的!

下载和安装驱动程序

下载驱动程序:

wget -r -np -nd http://us.download.nvidia.com/XFree86/Linux-x86_64/390.87/NVIDIA-Linux-x86_64-390.87.run
这里的驱动程序是运行 yum –y install kmod-nvidia 输出的信息中检测出是NVIDIA-Linux-x86_64-390.87.run版本的

安装驱动程序:

[root@study ~]# systemctl isolate multi-user.target
[root@study ~]# sh NVIDIA-Linux-x86_64-390.87.run

后期出现要不要安装兼容32bit的libraries,点击yes。安装成功后在/usr/lib64/xorg/modules/drivers 目录内,会多出一个 nvidia_drv.so 的驱动程序文件啰! 同时这个软件还提供了一支很有用的程序来帮助我们进行驱动程序升级。

[root@study ~]# nvidia-installer --update

如果安装成功,运行:nvidia-smi,可以显示一下信息:

2.CUDA的安装

第一步:查看服务器的显卡型号,是否支持CUDA:

lspci | grep -i nvidia

第二步:查看 gcc、g++、python的版本

第三步:到官网查看合适安装的版本:

 https://developer.nvidia.com/cuda-downloads

第四步:可能缺少相关的libvdpau文件包,到网站https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/
下载安装,具体安装教程如下:

sudo vim /etc/yum.repos.d/linuxtech.testing.repo

输入:

[linuxtech-testing]
name=LinuxTECH Testing
baseurl=http://pkgrepo.linuxtech.net/el6/testing/
enabled=0
gpgcheck=1
gpgkey=http://pkgrepo.linuxtech.net/el6/release/RPM-GPG-KEY-LinuxTECH.NET
sudo yum --enablerepo=linuxtech-testing install libvdpau
第五步:安装CUDA,官网有三种安装方式,在线安装比较费劲,个人没有安装成功,用第一种安装方式安装的,先下载,后导入服务器,离线安装。
第六步:环境配置:
vim /etc/profile
#在文件中加入如下内容
export PATH=/usr/local/cuda-7.5/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64:$LD_LIBRARY_PATH
#关闭文件后执行
source /etc/profile
Vi .bashrc

之后添加:

export PATH=$PATH:$HOME/bin:/usr/local/cuda/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64/
 
source .bashrc

3.cuDNN的安装

  1. <cudnnpath>
  2. Unzip the cuDNN package.

$ tar -xzvf cudnn-9.0-linux-x64-v7.tgz

  1. Copy the following files into the CUDA Toolkit directory, and change the file permissions.
  2. $ sudo cp cuda/include/cudnn.h /usr/local/cuda/include
  3. $ sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64

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

参考:https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html#installlinux

 

4.安装总结

首先是以官网的教程为准,这样可以少走弯路;其次就是认真查看日志提示的错误,避免下折腾。