前提条件
- 已绑定弹性IP。
- 已根据下表,下载对应操作系统所需驱动的安装包。
NVIDIA驱动下载
需要下载的驱动 | 安装包名称 | 下载地址 |
---|---|---|
GPU驱动 | NVIDIA-Linux-x86_64-375.66.run | http://www.nvidia.com/download/driverResults.aspx/118955/en-us |
CUDA Toolkit | cuda_8.0.61_375.26_linux.run | https://developer.nvidia.com/compute/cuda/8.0/Prod2/local_installers/cuda_8.0.61_375.26_linux-run |
操作步骤
步骤 1 登录P1型弹性云主机,并执行以下命令,切换至root权限。
sudo su
步骤 2 (可选)执行以下命令,安装gcc、g++和kernel-devel。
如果已安装gcc、g++和kernel-devel,请跳过本操作。
yum install gcc
yum install gcc-c++
yum install make
yum install kernel-devel-`uname -r`
步骤 3 (可选)禁用Nouveau驱动。
如果弹性云主机安装了Nouveau驱动,为避免安装NVIDIA驱动时发生冲突,需先禁用。
- 执行以下命令,查看弹性云主机是否安装Nouveau驱动。
lsmod | grep nouveau
− 是,执行步骤3.2。
− 否,执行步骤3。
- 将如下语句添加至文件“/etc/modprobe.d/blacklist.conf”的末尾。
blacklist nouveau
- 执行以下命令,备份并新建一个initramfs。
mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
dracut -v /boot/initramfs-$(uname -r).img $(uname -r)
- 执行以下命令,重启弹性云主机。
reboot
步骤 4 (可选)关闭X服务。
如果弹性云主机当前为图形化界面,为避免安装NVIDIA驱动时发生冲突,需先关闭X服务。
- 执行以下命令,切换至多用户模式。
systemctl set-default multi-user.target
- 执行以下命令,重启弹性云主机。
reboot
步骤 5 (可选)安装GPU驱动。
您可以使用CUDA Toolkit安装包中自带的GPU驱动,或者单独下载配套的GPU驱动版本。如无特殊要求,推荐您安装前提条件中提供的GPU驱动版本“NVIDIA-Linux-x86_64-375.66.run”,该版本已经过充分验证。
- 将下载的GPU驱动安装包“NVIDIA-Linux-x86_64-xxx.yy.run”上传到弹性云主机的“/tmp”目录下。
其中,驱动下载地址:http://www.nvidia.com/Download/index.aspx?lang=en
下载GPU驱动
- 执行以下命令,安装GPU驱动。
sh ./NVIDIA-Linux-x86_64-xxx.yy.run
- 执行以下命令,删除压缩包。
rm -f NVIDIA-Linux-x86_64-xxx.yy.run
步骤 5 安装CUDA Toolkit。
如无特殊要求,推荐您安装前提条件中提供的CUDA Toolkit版本“cuda_8.0.61_375.26_linux.run”,该版本已经过充分验证。
- 将下载的CUDA Toolkit安装包“cuda_a.b.cc_xxx.yy_linux.run”上传到弹性云主机的“/tmp”目录下。
其中,CUDA Toolkit下载地址:https://developer.nvidia.com/cuda-downloads
- 执行以下命令,修改权限。
chmod +x cuda_a.b.cc_xxx.yy_linux.run
- 执行以下命令,安装CUDA Toolkit。
./cuda_a.b.cc_xxx.yy_linux.run -toolkit -samples -silent -override --tmpdir=/tmp/
- 执行以下命令,删除压缩包。
rm -f cuda_a.b.cc_xxx.yy_linux.run
- 执行如下三条命令,验证是否安装成功。
cd /usr/local/cuda/samples/1_Utilities/deviceQueryDrv/
make
./deviceQueryDrv
回显信息中包含“Result = PASS”,表示CUDA Toolkit和GPU驱动安装成功。
./deviceQueryDrv Starting...
CUDA Device Query (Driver API) statically linked version
Detected 1 CUDA Capable device(s)
Device 0: "Tesla P100-PCIE-16GB"
CUDA Driver Version: 8.0
CUDA Capability Major/Minor version number: 6.0
Total amount of global memory: 16276 MBytes (17066885120 bytes)
(56) Multiprocessors, ( 64) CUDA Cores/MP: 3584 CUDA Cores
GPU Max Clock rate: 1329 MHz (1.33 GHz)
Memory Clock rate: 715 Mhz
Memory Bus Width: 4096-bit
L2 Cache Size: 4194304 bytes
Max Texture Dimension Sizes 1D=(131072) 2D=(131072, 65536) 3D=(16384, 16384, 16384)
Maximum Layered 1D Texture Size, (num) layers 1D=(32768), 2048 layers
Maximum Layered 2D Texture Size, (num) layers 2D=(32768, 32768), 2048 layers
Total amount of constant memory: 65536 bytes
Total amount of shared memory per block: 49152 bytes
Total number of registers available per block: 65536
Warp size: 32
Maximum number of threads per multiprocessor: 2048
Maximum number of threads per block: 1024
Max dimension size of a thread block (x,y,z): (1024, 1024, 64)
Max dimension size of a grid size (x,y,z): (2147483647, 65535, 65535)
Texture alignment: 512 bytes
Maximum memory pitch: 2147483647 bytes
Concurrent copy and kernel execution: Yes with 2 copy engine(s)
Run time limit on kernels: No
Integrated GPU sharing Host Memory: No
Support host page-locked memory mapping: Yes
Concurrent kernel execution: Yes
Alignment requirement for Surfaces: Yes
Device has ECC support: Enabled
Device supports Unified Addressing (UVA): Yes
Device PCI Domain ID / Bus ID / location ID: 0 / 0 / 6
Compute Mode:
< Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >
Result = PASS
----结束