文档

在GPU计算型实例中手动安装Tesla驱动(Linux)

更新时间:

在深度学习、AI等通用计算业务场景或者OpenGL、Direct3D、云游戏等图形加速场景下,安装了Tesla驱动的GPU才可以发挥高性能计算能力,或提供更流畅的图形显示效果。如果您在创建GPU计算型实例(Linux)时未同时安装Tesla驱动,则需要在创建GPU实例后,单独手动安装Tesla驱动(Linux)。本文为您介绍如何为Linux系统的GPU计算型实例手动安装Tesla驱动。

操作步骤

重要

本文适用于所有Linux系统的GPU计算型实例,更多信息,请参见GPU计算型。在该实例上仅支持安装与其操作系统一致的Tesla驱动,即Linux系统GPU实例支持安装Tesla驱动(Linux)。

步骤一:下载NVIDIA Tesla驱动

  1. 访问NVIDIA驱动程序下载

    说明

    关于安装和配置NVDIA驱动程序的更多信息,请参见NVIDIA Driver Installation Quickstart Guide

  2. 设置搜索条件后,单击搜索查找适用的驱动程序。

    驱动下载.png

    设置项说明如下所示:

    设置项

    说明

    示例

    • 产品类型

    • 产品系列

    • 产品家族

    根据实例规格配备的GPU选择对应的产品类型、产品系列和产品家族。

    说明

    关于如何查看GPU实例的详细信息(实例ID、实例规格以及操作系统等),具体操作,请参见查看实例信息

    • Data Center / Tesla

    • A-Series

    • NVDIA A10

    操作系统

    根据实例使用的镜像选择对应的Linux操作系统版本。

    Linux 64-bit

    CUDA Toolkit

    选择CUDA Toolkit版本。

    11.4

    语言

    选择驱动对应的语言。

    Chinese (Simplified)

    最新

    默认项为全部,保持默认选项即可。

    全部

    部分GPU计算型规格的GPU信息,以及支持的驱动版本和CUDA版本如下所示:

    信息项

    gn5

    gn5i

    gn6v

    gn6i

    gn6e

    gn7

    gn7i

    gn7e

    产品类型

    Data Center / Tesla

    Data Center / Tesla

    Data Center / Tesla

    Data Center / Tesla

    Data Center / Tesla

    Data Center / Tesla

    Data Center / Tesla

    Data Center / Tesla

    产品系列

    P-Series

    P-Series

    V-Series

    T-Series

    V-Series

    A-Series

    A-Series

    A-Series

    推荐的Tesla驱动版本

    410.79或更高版本

    450.80.02 或更高版本

    460.73.01 或更高版本

    450.80.02 或更高版本

    推荐的CUDA Toolkit版本

    CUDA Toolkit 10.1 Update 2

    CUDA Toolkit 11.0 Update 1

    CUDA Toolkit 11.2

    CUDA Toolkit 11.0 Update 1

    说明
    • 上表中仅列出部分常用GPU计算型实例规格的GPU信息,具有相同GPU卡的实例,对应的GPU信息(产品类型、产品系列和产品家族)相同。例如,ebmgn7i与gn7i的GPU卡都为NVIDIA A10,所以这两个实例对应的产品类型、产品系列和产品家族相同。

    • 手动安装Tesla驱动和CUDA包时,必须确保驱动版本和CUDA包版本的兼容性。更多信息,请参见CUDA兼容性

  3. 在搜索到的驱动程序列表下,选择需要下载的驱动版本(例如驱动版本为470.161.03),单击对应的驱动名称。

  4. 在待下载驱动的详情页面,单击下载

    下载页面.png

  5. NVIDIA驱动程序下载页面,右键单击同意并开始下载并选择复制链接地址

    复制下载地址.png

  6. 选择以下任一种方式远程连接Linux系统的GPU实例。

    连接方式

    操作指引

    Workbench

    通过密码或密钥认证登录Linux实例

    VNC

    使用VNC登录实例

  7. 使用wget命令,并粘贴您在步骤5中复制的驱动下载链接,执行命令下载安装包。

    命令示例如下所示:

    wget https://cn.download.nvidia.com/tesla/470.161.03/NVIDIA-Linux-x86_64-470.161.03.run

步骤二:安装NVIDIA Tesla驱动

不同操作系统实例,安装Tesla驱动的方法有所不同,具体操作如下所示。

CentOS操作系统

  1. 执行以下命令,查询GPU实例中是否安装kernel-devel和kernel-headers包。

    rpm  -qa | grep $(uname -r)
    • 如果回显类似如下信息,即包含了kernel-devel和kernel-headers包的版本信息,表示已安装。

      kernel-3.10.0-1062.18.1.el7.x86_64
      kernel-devel-3.10.0-1062.18.1.el7.x86_64
      kernel-headers-3.10.0-1062.18.1.el7.x86_64
    • 如果在回显信息中,您没有找到kernel-devel-*kernel-headers-*内容,您需要自行下载并安装kernel对应版本的kernel-develkernel-headers包。

      重要

      kernel-devel和kernel版本不一致会导致在安装driver rpm过程中driver编译出错。因此,请您确认回显信息中kernel-*的版本号后,再下载对应版本的kernel-devel。在示例回显信息中,kernel的版本号为3.10.0-1062.18.1.el7.x86_64。

  2. 授权并安装Tesla驱动。

    以操作系统是Linux 64-bit的驱动为例,推荐您使用.run形式的Tesla驱动,例如:NVIDIA-Linux-x86_64-xxxx.run。分别执行以下命令,授权并安装Tesla驱动。

    说明

    如果您使用的是.deb或.rpm等其他形式的Tesla驱动,具体安装方法,请参见NVIDIA CUDA Installation Guide for Linux

    chmod +x NVIDIA-Linux-x86_64-xxxx.run
    sh NVIDIA-Linux-x86_64-xxxx.run
  3. 执行以下命令,查看Tesla驱动是否安装成功。

    nvidia-smi

    回显信息类似如下所示,表示Tesla驱动安装成功。

    off状态.png

  4. (可选)通过NVIDIA Persistence Daemon方式开启Persistence-M属性。

    Tesla驱动安装完成后,Persistence-M默认为关闭(off)状态,Tesla驱动在开启Persistence-M属性状态下性能更稳定。为了业务更稳定地进行,建议您通过NVIDIA Persistence Daemon方式开启Persistence-M属性。更多信息,请参见Persistence Daemon

    说明
    1. 执行以下命令,运行NVIDIA Persistence Daemon。

      sudo nvidia-persistenced --user username 
      # username为您的用户名。
    2. 执行以下命令,查看Persistence-M属性状态。

      nvidia-smi

      回显信息类似如下所示,表示Persistence-M为开启(on)状态。

      2023-08-11_18-02-33.png

  5. (可选)重启系统后开启Persistence-M属性。

    如果系统重启,则会导致Persistence-M开启(on)状态失效,您可以按照以下操作重新开启Persistence-M属性。

    通过安装Tesla驱动安装包,将NVIDIA提供的安装脚本(例如示例脚本和安装程序脚本)安装到/usr/share/doc/NVIDIA_GLX-1.0/samples/nvidia-persistenced-init.tar.bz2路径下。

    1. 执行以下命令,解压并安装NVIDIA提供的安装脚本。

      cd  /usr/share/doc/NVIDIA_GLX-1.0/samples/
      tar xf nvidia-persistenced-init.tar.bz2
      cd  nvidia-persistenced-init
      sh install.sh
    2. 执行以下命令,查看NVIDIA Persistence Daemon是否正常运行。

      systemctl status nvidia-persistenced

      回显信息类似如下所示,表示NVIDIA Persistence Daemon正常运行。

      已安装.png

      说明

      您可以根据您的操作系统适配NVIDIA Persistence Daemon安装脚本以保证其正常工作。

    3. 执行以下命令,再次确认Persistence-M属性为开启(on)状态。

      nvidia-smi
    4. (可选)执行以下命令,关闭NVIDIA Persistence Daemon。

      如果目前无需运行NVIDIA Persistence Daemon,您可以选择关闭NVIDIA Persistence Daemon。

      systemctl stop nvidia-persistenced
      systemctl disable nvidia-persistenced
  6. (条件必选)如果您的GPU实例规格族为ebmgn7、ebmgn7e、ebmgn7ex或sccgn7ex时,安装与驱动版本对应的nvidia-fabricmanager服务。

    重要
    • GPU实例规格族为ebmgn7、ebmgn7e、ebmgn7ex或sccgn7ex时,如果未安装与版本驱动对应的nvidia-fabricmanager服务,则您将无法正常使用GPU实例。

    • GPU实例规格族不是ebmgn7、ebmgn7e、ebmgn7ex或sccgn7ex时,请跳过本步骤。

    1. 安装nvidia-fabricmanager服务。

      您可以通过源码或者安装包两种方式安装nvidia-fabricmanager服务,以下操作以CentOS 7.x和CentOS 8.x操作系统为例,驱动版本(driver_version)以460.91.03为例,命令示例如下。其中,driver_version替换为步骤一:下载NVIDIA Tesla驱动中下载的驱动版本号。

      • 源码方式

        • CentOS 7.x

          driver_version=460.91.03
          yum -y install yum-utils
          yum-config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/cuda-rhel7.repo
          yum install -y nvidia-fabric-manager-${driver_version}-1
        • CentOS 8.x

          driver_version=460.91.03
          driver_version_main=$(echo $driver_version | awk -F '.' '{print $1}')
          distribution=rhel8
          ARCH=$( /bin/arch )
          dnf config-manager --add-repo http://developer.download.nvidia.com/compute/cuda/repos/$distribution/${ARCH}/cuda-$distribution.repo
          dnf module enable -y nvidia-driver:${driver_version_main}
          dnf install -y nvidia-fabric-manager-0:${driver_version}-1
      • 安装包方式

        • CentOS 7.x

          driver_version=460.91.03
          wget http://mirrors.cloud.aliyuncs.com/nvidia-cuda/rhel7/x86_64/nvidia-fabric-manager-${driver_version}-1.x86_64.rpm
          rpm -ivh nvidia-fabric-manager-${driver_version}-1.x86_64.rpm
        • CentOS 8.x

          driver_version=460.91.03
          wget http://mirrors.cloud.aliyuncs.com/nvidia-cuda/rhel8/x86_64/nvidia-fabric-manager-${driver_version}-1.x86_64.rpm
          rpm -ivh nvidia-fabric-manager-${driver_version}-1.x86_64.rpm
    2. 执行如下命令,启动nvidia-fabricmanager服务。

      systemctl enable nvidia-fabricmanager
      systemctl start nvidia-fabricmanager
    3. 执行如下命令,查看nvidia-fabricmanager服务是否安装成功。

      systemctl status nvidia-fabricmanager

      回显信息如下所示,表示nvidia-fabricmanager服务安装成功。

      image.png

Ubuntu等其他操作系统

  1. 授权并安装Tesla驱动。

    以操作系统是Linux 64-bit的驱动为例,推荐您使用.run形式的Tesla驱动,例如:NVIDIA-Linux-x86_64-xxxx.run。分别执行以下命令,授权并安装Tesla驱动。

    说明

    如果您使用的是.deb或.rpm等其他形式的Tesla驱动,具体安装方法,请参见NVIDIA CUDA Installation Guide for Linux

    chmod +x NVIDIA-Linux-x86_64-xxxx.run
    sh NVIDIA-Linux-x86_64-xxxx.run
  2. 执行以下命令,查看Tesla驱动是否安装成功。

    nvidia-smi

    回显信息类似如下所示,表示Tesla驱动安装成功。

    off状态.png

  3. (可选)通过NVIDIA Persistence Daemon方式开启Persistence-M属性。

    Tesla驱动安装完成后,Persistence-M默认为关闭(off)状态,Tesla驱动在开启Persistence-M属性状态下性能更稳定。为了业务更稳定地进行,建议您通过NVIDIA Persistence Daemon方式开启Persistence-M属性。更多信息,请参见Persistence Daemon

    说明
    1. 执行以下命令,运行NVIDIA Persistence Daemon。

      sudo nvidia-persistenced --user username 
      # username为您的用户名。
    2. 执行以下命令,查看Persistence-M属性状态。

      nvidia-smi

      回显信息类似如下所示,表示Persistence-M为开启(on)状态。

      2023-08-11_18-02-33.png

  4. (可选)重启系统后开启Persistence-M属性。

    如果系统重启,则会导致Persistence-M开启(on)状态失效,您可以按照以下操作重新开启Persistence-M属性。

    通过安装Tesla驱动安装包,将NVIDIA提供的安装脚本(例如示例脚本和安装程序脚本)安装到/usr/share/doc/NVIDIA_GLX-1.0/samples/nvidia-persistenced-init.tar.bz2路径下。

    1. 执行以下命令,解压并安装NVIDIA提供的安装脚本。

      cd  /usr/share/doc/NVIDIA_GLX-1.0/samples/
      tar xf nvidia-persistenced-init.tar.bz2
      cd  nvidia-persistenced-init
      sh install.sh
    2. 执行以下命令,查看NVIDIA Persistence Daemon是否正常运行。

      systemctl status nvidia-persistenced

      回显信息类似如下所示,表示NVIDIA Persistence Daemon正常运行。

      已安装.png

      说明

      您可以根据您的操作系统适配NVIDIA Persistence Daemon安装脚本以保证其正常工作。

    3. 执行以下命令,再次确认Persistence-M属性为开启(on)状态。

      nvidia-smi
    4. (可选)执行以下命令,关闭NVIDIA Persistence Daemon。

      如果目前无需运行NVIDIA Persistence Daemon,您可以选择关闭NVIDIA Persistence Daemon。

      systemctl stop nvidia-persistenced
      systemctl disable nvidia-persistenced
  5. (条件必选)如果您的GPU实例规格族为ebmgn7、ebmgn7e、ebmgn7ex或sccgn7ex时,安装与驱动版本对应的nvidia-fabricmanager服务。

    重要
    • GPU实例规格族为ebmgn7、ebmgn7e、ebmgn7ex或sccgn7ex时,如果未安装与版本驱动对应的nvidia-fabricmanager服务,则您将无法正常使用GPU实例。

    • GPU实例规格族不是ebmgn7、ebmgn7e、ebmgn7ex或sccgn7ex时,请跳过本步骤。

    1. 安装nvidia-fabricmanager服务。

      您可以通过源码或者安装包两种方式安装nvidia-fabricmanager服务,以下操作以Ubuntu 16.04、Ubuntu 18.04、Ubuntu 20.04或Ubuntu 22.04操作系统为例,驱动版本(driver_version)以460.91.03或535.154.05为例,命令示例如下。其中,driver_version替换为步骤一:下载NVIDIA Tesla驱动中下载的驱动版本号。

      重要

      在Ubuntu 22.04操作系统中安装nvidia-fabricmanager服务时,需要Tesla驱动版本高于515.48.07,针对Ubuntu 22.04操作系统,下述示例代码以535.154.05版本的驱动为例。

      • 源代码方式

        Ubuntu 16.04、Ubuntu 18.04或Ubuntu 20.04

        driver_version=460.91.03
        driver_version_main=$(echo $driver_version | awk -F '.' '{print $1}')
        distribution=$(. /etc/os-release;echo $ID$VERSION_ID | sed -e 's/\.//g')
        wget https://developer.download.nvidia.com/compute/cuda/repos/$distribution/x86_64/cuda-$distribution.pin
        mv cuda-$distribution.pin /etc/apt/preferences.d/cuda-repository-pin-600
        wget https://developer.download.nvidia.com/compute/cuda/repos/$distribution/x86_64/3bf863cc.pub
        apt-key add 3bf863cc.pub
        rm 3bf863cc.pub
        echo "deb http://developer.download.nvidia.com/compute/cuda/repos/$distribution/x86_64 /" | tee /etc/apt/sources.list.d/cuda.list
        apt-get update
        apt-get -y install nvidia-fabricmanager-${driver_version_main}=${driver_version}-*

        Ubuntu 22.04

        driver_version=535.154.05
        driver_version_main=$(echo $driver_version | awk -F '.' '{print $1}')
        distribution=$(. /etc/os-release;echo $ID$VERSION_ID | sed -e 's/\.//g')
        wget https://developer.download.nvidia.com/compute/cuda/repos/$distribution/x86_64/cuda-$distribution.pin
        mv cuda-$distribution.pin /etc/apt/preferences.d/cuda-repository-pin-600
        wget https://developer.download.nvidia.com/compute/cuda/repos/$distribution/x86_64/3bf863cc.pub
        apt-key add 3bf863cc.pub
        rm 3bf863cc.pub
        echo "deb http://developer.download.nvidia.com/compute/cuda/repos/$distribution/x86_64 /" | tee /etc/apt/sources.list.d/cuda.list
        apt-get update
        apt-get -y install nvidia-fabricmanager-${driver_version_main}=${driver_version}-*
      • 安装包方式

        • Ubuntu 16.04

          driver_version=460.91.03
          driver_version_main=$(echo $driver_version | awk -F '.' '{print $1}')
          wget http://mirrors.cloud.aliyuncs.com/nvidia-cuda/ubuntu1604/x86_64/nvidia-fabricmanager-${driver_version_main}_${driver_version}-1_amd64.deb
          dpkg -i nvidia-fabricmanager-${driver_version_main}_${driver_version}-1_amd64.deb
        • Ubuntu 18.04

          driver_version=460.91.03
          driver_version_main=$(echo $driver_version | awk -F '.' '{print $1}')
          wget http://mirrors.cloud.aliyuncs.com/nvidia-cuda/ubuntu1804/x86_64/nvidia-fabricmanager-${driver_version_main}_${driver_version}-1_amd64.deb
          dpkg -i nvidia-fabricmanager-${driver_version_main}_${driver_version}-1_amd64.deb
        • Ubuntu 20.04

          driver_version=460.91.03
          driver_version_main=$(echo $driver_version | awk -F '.' '{print $1}')
          wget http://mirrors.cloud.aliyuncs.com/nvidia-cuda/ubuntu2004/x86_64/nvidia-fabricmanager-${driver_version_main}_${driver_version}-1_amd64.deb
          dpkg -i nvidia-fabricmanager-${driver_version_main}_${driver_version}-1_amd64.deb
        • Ubuntu 22.04

          driver_version=535.154.05 
          driver_version_main=$(echo $driver_version | awk -F '.' '{print $1}')
          wget http://mirrors.cloud.aliyuncs.com/nvidia-cuda/ubuntu2204/x86_64/nvidia-fabricmanager-${driver_version_main}_${driver_version}-1_amd64.deb
          dpkg -i nvidia-fabricmanager-${driver_version_main}_${driver_version}-1_amd64.deb
    2. 执行如下命令,启动nvidia-fabricmanager服务。

      systemctl enable nvidia-fabricmanager
      systemctl start nvidia-fabricmanager
    3. 执行如下命令,查看nvidia-fabricmanager服务是否安装成功。

      systemctl status nvidia-fabricmanager

      回显信息如下所示,表示nvidia-fabricmanager服务安装成功。

      image.png

相关文档

  • 如果您购买了Windows系统的GPU计算型实例,则只能单独安装Tesla驱动来更好地应用于深度学习、AI等通用计算业务场景。具体操作,请参见在GPU计算型实例中安装Tesla驱动(Windows)

  • 如果您需要在创建GPU实例时同时安装了Tesla驱动,具体操作,请参见创建GPU实例时自动安装或加载Tesla驱动

  • 如果当前Tesla驱动因某种原因需要您卸载,具体操作,请参见卸载Tesla驱动

  • 如果GPU实例中安装的驱动版本不适用于当前场景,或您安装了错误的驱动类型或版本导致GPU实例无法使用,您可以卸载当前驱动然后安装新的驱动或直接升级驱动。关于如何升级驱动的具体操作,请参见升级NVIDIA驱动