CentOS安装Nvidia驱动和CUDA ToolKit
配置有GPU的云服务器或物理机需要安装正确的驱动软件才能够使用,以NVIDIA Tesla GPU为例,需要安装Tesla显卡驱动作为硬件驱动程序,还需要安装CUDA作为上层应用程序所需要的库。
本文以Centos系统+Tesla P100 GPU为例,展示GPU驱动和CUDA的安装过程。
Centos 安装 Tesla Driver
Centos上安装Tesla驱动有两种方式:
-
Shell脚本安装,适用于任何Linux发行版
-
包安装,Centos使用RPM包
环境准备
NVIDIA Telsa GPU的驱动在安装过程中需要编译kernel module,需要安装gcc和kernel devel。
#> yum install gcc kernel-devel-($uname -r) kernel-headers
Shell脚本安装
1. 登录NVIDIA驱动官网
2. 按照操作系统和GPU型号选择安装包,以Tesla P100为例
Operating System 选择 Linux 64-bit 代表下载的 Shell 安装文件,其他具体的选择代表下载的对应的安装包
3. 点击对应 Version,跳转后邮件选择复制链接地址
4. 登录需要安装驱动的Centos主机,使用 wget
命令下载驱动
#> wget http://us.download.nvidia.com/tesla/440.64.00/NVIDIA-Linux-x86_64-440.64.00.run
5. 对下载的Shell脚本添加权限并执行
#> sudo chmod +x NVIDIA-Linux-x86_64-440.33.01.run
#> sudo /bin/bash ./NVIDIA-Linux-x86_64-440.33.01.run
6. 验证安装效果:运行nvidia-smi
,如果显示了如下的GPU信息,说明驱动安装成功。
安装包安装
RPM 包安装
1. 登录NVIDIA驱动官网
2. 选择对应的RPM包的操作系统,复制链接
#> wget http://us.download.nvidia.com/tesla/440.33.01/nvidia-driver-local-repo-rhel7-440.33.01-1.0-1.x86_64.rpm
3. 运行安装软件包命令
#> rpm -i nvidia-driver-local-repo-rhel7-440.33.01_1.0-1_x86_64.rpm
4. 使用yum
清理缓存
#> yum clean all
5. 使用yum
安装驱动
#> yum install cuda-drivers
6. 使用reboot
重启机器
7. 运行nvidia-smi
验证是否安装成功
CUDA安装
CUDA(Compute Unified Device Architecture)是显卡厂商 NVIDIA 推出的运算平台。 CUDA™ 是一种由 NVIDIA 推出的通用并行计算架构,该架构使 GPU 能够解决复杂的计算问题。 它包含了 CUDA 指令集架构(ISA)以及 GPU 内部的并行计算引擎。 开发人员现在可以使用 C 语言, C++ , FORTRAN 来为 CUDA™ 架构编写程序,所编写出的程序可以在支持 CUDA™ 的处理器上以超高性能运行。
对于采用 NVIDIA GPU 的云服务器或主机,需要安装 CUDA 开发运行环境。以目前最常用的 CUDA 7.5 为例,可参照以下步骤进行安装。
安装步骤
1. 登录CUDA官方下载页面
2. 按照系统和安装方式选择安装包,以CentOS 7为例,选择如下
3. 下载安装包,以wget
方式为例,登录GPU实例
#> wget http://developer.download.nvidia.com/compute/cuda/7.5/Prod/local_installers/cuda-repo-rhel7-7-5-local-7.5-18.x86_64.rpm
4. 在 CUDA 安装包所在目录下运行如下命令:
#> sudo rpm -i cuda-repo-rhel7-7-5-local-7.5-18.x86_64.rpm
#> sudo yum clean all
#> sudo yum install cuda
5. 在/usr/local/cuda/samples/1_Utilities/deviceQuery
目录下执行make
命令,编译出 deviceQuery 程序
6. 使用./deviceQuery
命令运行 deviceQuery 程序,如果正常显示如下设备信息,则认为 CUDA 安装正确。
安装遇到的坑
Q1. 安装 CUDA 时提示 dkms 依赖错误
解决:
-
安装额外依赖包 EPEL(Extra Packages for Enterprise Linux),以 CentOS7 为例
#> yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
-
安装 dkms
#> yum -y install dkms
Q2. 先安装 NVIDIA Driver 再安装 CUDA 后,再次使用nvidia-smi
报错,报错信息为Failed to initialize NVML: Driver/library version mismatch
解决:
-
先排查 NVIDIA Driver 对应的 CUDA 版本是否对应,可以在驱动下载官网查看自己下载的驱动版本
-
排除驱动版本不对的问题后,重启机器即可
#> sudo reboot now
- 点赞
- 收藏
- 关注作者
评论(0)