针对通用计算场景或图形加速场景,您可以在创建GPU实例时自动安装或加载Tesla驱动,也可以在创建GPU实例后手动安装Tesla驱动,配备了驱动的GPU实例才能提供更好的计算性能和图形渲染能力。本文介绍如何在创建GPU实例时自动安装或加载Tesla驱动。
驱动安装方式
选择不同安装方式自动安装或加载Tesla驱动来满足通用计算场景或图形加速场景的性能需求。
安装方式 | 说明 | 相关链接 |
公共镜像方式 | 创建GPU实例时,您选择了公共镜像并同时选中安装GPU驱动选项。 | |
云市场镜像方式 | 创建GPU实例时,您选择了预装NVIDIA Tesla驱动的云市场镜像。 | |
自动安装脚本方式 | 创建GPU实例时,在镜像区域未选中安装GPU驱动选项,但在自定义数据区域输入自动安装脚本来安装NVIDIA Tesla驱动。 |
通过公共镜像自动安装驱动
特定的Linux操作系统公共镜像支持选择安装GPU驱动选项,如果选择公共镜像后同时选中安装GPU驱动选项,则创建GPU实例后会自动安装Tesla驱动。
前往实例创建页。
选择自定义购买页签。
按需选择付费类型、地域、网络及可用区、实例规格、镜像等配置。
除实例规格和镜像外,如需了解其他配置项的详情,请参见配置项说明。支持创建GPU实例时同步安装Tesla驱动的实例、镜像及驱动版本对应关系如下:
说明NVIDIA Tesla驱动用于驱动物理GPU,配合CUDA、cuDNN库可以高效地使用GPU,安装NVIDIA Tesla驱动会同时安装CUDA和cuDNN库。如果您的业务属于新的业务系统,建议选择最新版本的Tesla驱动、CUDA、cuDNN库。
支持的实例规格
支持的公共镜像版本
NVIDIA Tesla驱动版本
CUDA版本
cuDNN版本
gn7e、gn7s、gn7i、gn6v、gn6i、gn6e、gn5、gn5i
ebmgn7e、ebmgn7i、ebmgn6v、ebmgn6i、ebmgn6e、ebmgn5i
ebmgn7ix、ebmgn7ex
Alibaba Cloud Linux 2、Linux3
Ubuntu 22.04、20.04、18.04
Centos 8.x、7.x
说明ebmgn7e和ebmgn7ex不支持选择Ubuntu 18.04版本的镜像。
550.90.07
12.4.1
9.2.0.82
gn7e、gn7s、gn7i、gn6v、gn6i、gn6e、gn5、gn5i
ebmgn7e、ebmgn7i、ebmgn6v、ebmgn6i、ebmgn6e、ebmgn5i
ebmgn7ix、ebmgn7ex
Alibaba Cloud Linux 2、Alibaba Cloud Linux 3
Ubuntu 20.04、18.04
CentOS 8.x、7.x
说明ebmgn7e和ebmgn7ex不支持选择Ubuntu 18.04版本的镜像。
535.154.05
12.1.1
8.9.7.29
gn7e、gn7s、gn7i、gn6v、gn6i、gn6e、gn5、gn5i
ebmgn7、ebmgn7i、ebmgn7e、ebmgn6v、ebmgn6i、ebmgn6e、ebmgn5i
ebmgn7ix、ebmgn7ex
Alibaba Cloud Linux 2、Alibaba Cloud Linux 3
Ubuntu 20.04、18.04
CentOS 8.x、7.x
525.105.17
12.0.1
8.9.1.23
gn7i、gn7e、gn7s、gn6v、gn6i、gn6e、gn5、gn5i
ebmgn7、ebmgn7i、ebmgn7e、ebmgn6v、ebmgn6i、ebmgn6e、ebmgn5i
sccgn7ex
ebmgn7ix、ebmgn7ex
Alibaba Cloud Linux 2、Alibaba Cloud Linux 3
Ubuntu 20.04、18.04、16.04
CentOS 8.x、7.x
Debian 10.10
说明sccgn7ex仅支持选择Debian10.10、 Ubuntu 20.04、 CentOS 8.3以及Alibaba Cloud Linux 2版本的镜像。
470.161.03
11.4.1
8.2.4
gn7、gn7i、gn7e、gn6v、gn6i、gn6e、gn5、gn5i
ebmgn7、ebmgn7i、ebmgn7e、ebmgn6v、ebmgn6i、ebmgn6e、ebmgn5i
Alibaba Cloud Linux 2
Ubuntu 20.04、18.04、16.04
CentOS 8.x、7.x
460.91.03
11.2.2
8.1.1
gn7、gn7e、gn6v、gn6i、gn6e、gn5、gn5i
ebmgn7、ebmgn7e、ebmgn6v、ebmgn6i、ebmgn6e、ebmgn5i
Alibaba Cloud Linux 2
Ubuntu 20.04、18.04、16.04
CentOS 8.x、7.x
460.91.03
11.0.2
8.1.1
8.0.4
gn6v、gn6i、gn6e、gn5、gn5i
ebmgn6v、ebmgn6i、ebmgn6e、ebmgn5i
Alibaba Cloud Linux 2
Ubuntu 18.04、16.04
CentOS 8.x、7.x
460.91.03
10.2.89
8.1.1
8.0.4
7.6.5
gn6v、gn6i、gn6e、gn5、gn5i
ebmgn6v、ebmgn6i、ebmgn6e、ebmgn5i
Ubuntu 18.04、16.04
CentOS 7.x
450.80.02
440.64.00
10.1.168
8.0.4
7.6.5
7.5.0
gn6v、gn6i、gn6e、gn5、gn5i
ebmgn6v、ebmgn6i、ebmgn6e、ebmgn5i
Ubuntu 18.04、16.04
CentOS 7.x
450.80.02
440.64.00
10.0.130
7.6.5
7.5.0
7.4.2
7.3.1
重要如果实例创建完成后需要更换操作系统,请您确保使用支持自动安装Tesla驱动的公共镜像。如果您选择了不支持自动安装Tesla驱动的公共镜像,请先取消自动安装Tesla驱动功能,具体操作,请参见更换操作系统时如何取消自动安装Tesla驱动功能。
如果您通过
pip3 install torch
安装了版本为2.1.2的PyTorch,则需要安装版本为12.1的CUDA,否则在使用PyTorch过程中会报错,更多信息,请参见使用PyTorch时出现“undefined symbol: __nvJitLinkAddData_12_1, version libnvJitLink.so.12”报错。
以gn7i实例为例,在镜像区域的公共镜像页签下,选择Linux操作系统及版本(例如Alibaba Cloud Linux 3.2104 LTS 64位)时,选中安装GPU驱动选项,继续依次选择CUDA版本、Driver版本以及cuDNN版本,则创建实例后会同步安装NVIDIA Tesla驱动。
实例创建或启动后,Tesla驱动的相关说明如下:
除了为实例配置自动安装Tesla驱动、CUDA和cuDNN库,您还可以根据实际需要继续选择是否自动安装RDMA软件栈(仅超级计算集群sccgn7ex涉及)、安装eRDMA软件栈(仅弹性裸金属服务器ebmgn7ex和ebmgn7ix涉及)。待所有软件安装完成后,实例会自动重启,然后Tesla驱动才能正常工作。
说明Tesla驱动在Persistence Mode下工作更稳定。自动安装脚本会自动开启Tesla驱动的Persistence Mode,并将该设置添加到Linux系统服务中,在开机时自动启动服务,从而确保实例重启后默认自动开启Persistence Mode。
RDMA软件栈
RDMA(Remote Direct Memory Access)软件栈包含RDMA网卡驱动及所需工具包。
说明为优化神龙架构GPU服务器的网络性能,阿里云推出了sccgn7ex实例规格,该规格机型配备了具有超强计算能力的GPU和RDMA(Remote Direct Memory Access)高性能网络服务。如果您选择了sccgn7ex实例,则需要根据自身业务,选择是否自动安装RDMA软件栈。
如果单独选中安装RDMA软件栈,则实例创建后会自动安装RDMA网卡驱动及所需工具包,方便您快速使用RDMA的高性能网络服务(例如高吞吐、低延迟特性)。
如果同时选中安装GPU驱动和安装RDMA软件栈,则实例创建后会自动安装RDMA软件栈和GPU驱动、CUDA、cuDNN,并自动加载nvidia_peermem模块,方便您的业务使用GPU Direct RDMA功能。更多信息,请参见sccgn系列实例使用说明及验证。
eRDMA软件栈
eRDMA(Elastic Remote Direct Memory Access)是阿里云自研的云上弹性RDMA网络,具备传统RDMA网络的高吞吐、低延迟特性,同时可支持秒级的大规模RDMA组网。RDMA软件栈包含NVIDIA MLNX_OFED驱动、eRDMA驱动以及所需工具包。
说明目前GPU实例中,ebmgn7ex、ebmgn7ix规格族支持创建/挂载弹性RDMA网卡。如果您选择了ebmgn7ex或ebmgn7ix实例,则需要根据自身业务选择是否自动安装eRDMA软件栈。
如果单独选中安装eRDMA软件栈,则实例创建后会自动安装NVIDIA MLNX_OFED驱动及eRDMA驱动,方便您快速使用RDMA功能。
如果同时选中安装GPU驱动和安装eRDMA软件栈,则实例创建后会自动安装eRDMA软件栈和GPU驱动、CUDA、cuDNN,并自动加载nvidia_peermem模块,方便您的业务使用GPU Direct RDMA功能。
更多信息,请参见在GPU实例上配置eRDMA。
自动安装Tesla驱动耗时受不同实例规格的内网带宽和CPU核数影响,大约需要10~20分钟。您可以远程连接实例并查看安装过程,也可以在安装完成后查看安装日志/root/auto_install/auto_install.log。安装过程中的显示效果如下所示:
安装过程
显示效果
正在安装
显示安装进度条。
安装成功
安装结果提示ALL INSTALL OK。
安装失败
安装结果提示INSTALL FAIL。
重要在安装过程中无法使用GPU时,请勿对实例进行任何操作。如果安装了GPU某些软件,则会由于自动安装失败而导致实例不可用。
按照页面提示,完成订单支付。
通过预装驱动的云市场镜像自动加载驱动
部分GPU计算型实例(Linux)的云市场镜像中已预装了NVIDIA Tesla驱动,该镜像供您免费使用。您可以在云市场镜像中选择已预装了Tesla驱动的免费镜像,创建GPU实例时选用该镜像也会同步加载Tesla驱动。
前往实例创建页。
选择自定义购买页签。
按需选择付费类型、地域、网络及可用区、实例规格、镜像等配置。
除实例规格和镜像外,如需了解其他配置项的详情,请参见配置项说明。
如果需要获得GPU超强的计算能力,您可以选择如下云市场镜像,在创建GPU实例时同步加载Tesla驱动。
支持的实例规格
已预装驱动或软件栈的镜像
版本信息
是否已安装nvidia- fabircmanager
gn7e、gn7i、gn6e、gn6v、gn6i、gn5、gn5i
ebmgn7i、ebmgn6e、ebmgn6v、ebmgn6i
Alibaba Cloud Linux 2 64位(预装NVIDIA GPU驱动)
Ubuntu 20.04 64位(预装NVIDIA GPU驱动)
CentOS 7.9 64位(预装NVIDIA GPU驱动)
Tesla驱动版本:470.161.03
CUDA版本:11.4.1
cuDNN版本:8.2.4
否
Alibaba Cloud Linux 3.2104 LTS 64位预装NVIDIA GPU驱动镜像
Tesla驱动版本:535.154.05
Docker版本:26.1.3
NVIDIA Container Toolkit版本:1.13.5
否
Alibaba Cloud Linux 3.2104 LTS 64位预装NVIDIA GPU 550.90.07驱动镜像
Tesla驱动版本:550.90.07
CUDA版本:12.4.1
cuDNN版本:9.2.0
Docker版本:26.1.3
eRDMA版本:0.2.37
是
Ubuntu 22.04 64位预装NVIDIA GPU 550.90.07驱动镜像
Tesla驱动版本:550.90.07
CUDA版本:12.4.1
cuDNN版本:9.2.0
Docker版本:27.0.3
eRDMA版本:0.2.37
是
以华北2(北京)地域的gn6i(ecs.gn6i-c4g1.xlarge)实例为例,在镜像区域的云市场镜像页签下,支持选择已预装NVIDIA Tesla驱动的免费镜像。如果选择了云市场镜像中已预装驱动的镜像,则创建实例时自动加载NVIDIA Tesla驱动。例如:
单击从云市场获取更多选择(含操作系统),然后搜索
预装NVIDIA
,选择并使用已预装NVIDIA Tesla驱动的免费镜像。如果需要快速使用RDMA/eRDMA的高性能网络服务(例如高吞吐、低延迟特性)功能以实现RDMA直通加速能力 ,您可以选择如下云市场镜像,在创建GPU实例时自动加载Tesla驱动、RDMA软件栈或eRDMA软件栈。
支持的实例规格
已预装驱动或软件栈的镜像
版本信息
sccgn7ex
Alibaba Cloud Linux 2 64位 for sccgn7ex(预装NVIDIA GPU驱动/RDMA软件栈)
Ubuntu 20.04 64位 for sccgn7ex(预装NVIDIA GPU驱动/RDMA软件栈)
Tesla驱动版本:525.105.17
CUDA版本:12.0.1
cuDNN版本:8.9.1.23
支持eRDMA弹性网卡的实例(例如ebmgn7ix、ebmgn7ex)
Alibaba Cloud Linux 3 64位 (预装eRDMA软件栈)
eRDMA驱动版本:0.2.37
按照页面提示,完成订单支付。
通过自动安装脚本方式安装驱动
在创建GPU实例时,如果在镜像区域未选中安装GPU驱动选项,则您可以在自定义数据区域输入自动安装脚本来安装NVIDIA Tesla驱动。
脚本参数设置说明
使用自动安装脚本时,您需要根据实际业务场景修改如下参数。
根据您所创建的实例规格和镜像,修改对应的Tesla驱动、CUDA和cuDNN库版本。详细的版本支持情况,请参见通过公共镜像自动安装驱动中选择公共镜像时Tesla驱动支持的镜像版本和实例规格。
以修改Tesla驱动版本为470.161.03、CUDA版本为11.4.1、cuDNN版本为8.2.4为例,示例如下:
DRIVER_VERSION="470.161.03" CUDA_VERSION="11.4.1" CUDNN_VERSION="8.2.4"
(条件必选)如果实例为超级计算集群sccgn7ex的实例规格族,则设置是否安装RDMA软件栈。
仅超级计算集群sccgn7ex的实例规格族支持安装RDMA软件栈。如需安装RDMA软件栈,则将
IS_INSTALL_RDMA
的值设置为TRUE
,否则设置为FALSE
。示例如下:IS_INSTALL_RDMA="TRUE"
(条件必选)如果实例为弹性裸金属服务器ebmgn7ex和ebmgn7ix实例规格族,则设置是否安装eRDMA软件栈。
仅弹性裸金属服务器ebmgn7ex和ebmgn7ix实例规格族支持安装eRDMA软件栈。如需安装eRDMA软件栈,则将
IS_INSTALL_eRDMA
的值设置为TRUE
,否则设置为FALSE
。示例如下:IS_INSTALL_eRDMA="TRUE"
操作步骤
前往实例创建页。
选择自定义购买页签。
按需选择付费类型、地域、网络及可用区、实例规格、镜像、自定义数据等配置。
如需了解其他配置项,请参见配置项说明。
在高级选项(选填)的自定义数据区域内,手动输入已准备的脚本内容。
您可以自行准备自动安装脚本,关于自动安装脚本参数设置的详细说明,请参见脚本参数设置说明。
本脚本以使用
.run
安装包方式安装Tesla驱动等模块为例。脚本示例如下所示:#!/bin/sh #Please input version to install DRIVER_VERSION="550.90.07" CUDA_VERSION="12.4.1" CUDNN_VERSION="9.2.0.82" IS_INSTALL_eRDMA="FALSE" IS_INSTALL_RDMA="FALSE" INSTALL_DIR="/root/auto_install" #using .run to install driver and cuda auto_install_script="auto_install_v4.0.sh" script_download_url=$(curl http://100.100.100.200/latest/meta-data/source-address | head -1)"/opsx/ecs/linux/binary/script/${auto_install_script}" echo $script_download_url rm -rf $INSTALL_DIR mkdir -p $INSTALL_DIR cd $INSTALL_DIR && wget -t 10 --timeout=10 $script_download_url && bash ${INSTALL_DIR}/${auto_install_script} $DRIVER_VERSION $CUDA_VERSION $CUDNN_VERSION $IS_INSTALL_RDMA $IS_INSTALL_eRDMA
按照页面提示,完成订单支付。
说明如果调用RunInstances接口来创建GPU实例,则您只能通过UserData参数上传自动安装脚本来安装NVIDIA Tesla驱动,更多信息,请参见RunInstances。
在创建GPU实例时,如果未同时自动安装NVIDIA Tesla驱动,则可以在GPU实例创建后手动执行自动安装脚本来安装Tesla驱动等软件。即通过SSH登录实例后,在实例内编辑一个文件,然后将自动安装脚本内容复制到实例内并作为Shell脚本执行。关于实例连接方式的介绍,请参见ECS远程连接方式概述。
相关文档
针对通用计算场景或图形加速场景,如果您在创建GPU计算型实例时未自动安装或加载Tesla驱动,则需要在创建GPU实例后,单独安装相应驱动。具体操作,请参见: