下载
中文
注册

安装NPU驱动固件

物理机和容器部署场景,只需要在物理机安装NPU驱动固件;虚拟机部署场景,除了在物理机安装NPU驱动固件外,还需要在虚拟机安装NPU驱动。

安装说明

  • 首次安装场景:硬件设备刚出厂时未安装驱动,或者硬件设备前期安装过驱动固件但是当前已卸载,上述场景属于首次安装场景,需按照“驱动 > 固件”的顺序安装驱动固件。
  • 覆盖安装场景:硬件设备前期安装过驱动固件且未卸载,当前要再次安装驱动固件,此场景属于覆盖安装场景,需按照“固件 > 驱动”的顺序安装固件驱动。

检查安装环境

在安装驱动固件前,建议按照以下检查项检查环境,确保驱动固件能正常安装。

表1 环境检查

检查项

检查方法

检测卡是否正常在位

可通过命令行或BMC管理页面检测卡是否正常在位,如果执行命令时,提示没有安装lspci,可通过BMC管理页面检查。

  • 执行lspci | grep d500命令,如果服务器上有NN>0)张卡,回显中含“d500”字段的行数为N,则表示卡正常在位。
    01:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d500 (rev 23)
    ......

    若回显类似如下信息,则参见驱动安装缺少依赖报错解决。

    command lscpi not found
  • 如果卡所在的服务器是华为服务器,可通过BMC管理网口登录iBMC WebUI界面,选择系统管理 > 系统信息,单击其他。若推理卡的PCIe卡信息在“PCIe卡”列表中,表示卡正常在位。

确认操作系统和内核版本

在安装驱动前,需要用户确认现场操作系统和内核版本,从而确定是否需要安装驱动编译所需依赖。

执行如下命令查看现场服务器操作系统和内核版本,并和华为的版本要求进行对比。
uname -m && cat /etc/*release
uname -r

操作系统内核版本和对应的安装方式如表2~表5所示。

如果现场服务器连通外网,Ubuntu系统会自动升级内核,因此安装NPU驱动前,需要检查内核版本,如果内核版本和配套表中的不一致,需要使用下表中介绍的源码编译方式安装。同时建议关闭内核自动更新机制,避免更新后NPU驱动不可用。

执行如下命令关闭内核自动更新:

apt-mark hold linux-image-generic linux-headers-generic linux-image-extra
表2 Atlas 300I Pro 推理卡

host操作系统版本

host操作系统架构

软件包默认的host操作系统内核版本

gcc编译器版本

安装方式

CentOS 7.6

aarch64

4.14.0-115.el7a.0.1.aarch64

4.8.5

二进制安装。

直接按照安装驱动固件内容安装驱动固件。

Ubuntu 18.04.1

aarch64

4.15.0-29-generic

7.5.0

Ubuntu 20.04

aarch64

5.4.0-26-generic

原生gcc(源自带gcc版本)

Ubuntu 18.04.5

aarch64

4.15.0-112-generic

7.5.0

源码编译安装。

  1. 需要先参见安装驱动源码编译所需依赖安装dkms等依赖。
  2. 再按照安装驱动固件内容安装驱动固件。

openEuler 20.03 LTS

aarch64

4.19.90-2003.4.0.0036.oe1.aarch64

7.3.0

openEuler 22.03 LTS

aarch64

5.10.0-60.18.0.50.oe2203.aarch64

10.3.1

Kylin V10 SP1

aarch64

4.19.90-17.ky10.aarch64

7.3.0

Kylin V10 SP2

aarch64

4.19.90-24.4.v2101.ky10.aarch64

7.3.0

CUlinux 3.0

aarch64

5.10.0-60.67.0.104.ule3.aarch64

10.3.1

表3 Atlas 300V Pro 视频解析卡

host操作系统版本

host操作系统架构

软件包默认的host操作系统内核版本

gcc编译器版本

安装方式

CentOS 7.6

aarch64

4.14.0-115.el7a.0.1.aarch64

4.8.5

二进制安装。

直接按照安装驱动固件内容安装驱动固件。

Ubuntu 18.04.1

aarch64

4.15.0-29-generic

7.5.0

Ubuntu 20.04

aarch64

5.4.0-26-generic

原生gcc(源自带gcc版本)

Ubuntu 18.04.5

aarch64

4.15.0-112-generic

7.5.0

源码编译安装。

  1. 需要先参见安装驱动源码编译所需依赖安装dkms等依赖。
  2. 再按照安装驱动固件内容安装驱动固件。

openEuler 20.03 LTS

aarch64

4.19.90-2003.4.0.0036.oe1.aarch64

7.3.0

openEuler 22.03 LTS

aarch64

5.10.0-60.18.0.50.oe2203.aarch64

10.3.1

Kylin V10 SP1

aarch64

4.19.90-17.ky10.aarch64

7.3.0

UOS20 1050e

aarch64

4.19.90-2201.4.0.0135.up1.uel20.aarch64

10.3.1

表4 Atlas 300I Duo 推理卡

host操作系统版本

host操作系统架构

软件包默认的host操作系统内核版本

gcc编译器版本

安装方式

Ubuntu 20.04

aarch64

5.4.0-26-generic

9.3.0

源码编译安装。

  1. 需要先参见安装驱动源码编译所需依赖安装dkms等依赖。
  2. 再按照安装驱动固件内容安装驱动固件。
表5 Atlas 300V 视频解析卡

host操作系统版本

host操作系统架构

软件包默认的host操作系统内核版本

gcc编译器版本

安装方式

Ubuntu 20.04

aarch64

5.4.0-26-generic

原生gcc(源自带gcc版本)

二进制安装。

直接按照安装驱动固件内容安装驱动固件。

openEuler 22.03 LTS

aarch64

5.10.0-60.18.0.50.oe2203.aarch64

10.3.1

源码编译安装。

  1. 需要先参见安装驱动源码编译所需依赖安装dkms等依赖。
  2. 再按照安装驱动固件内容安装驱动固件。

安装驱动固件

  1. root用户登录服务器。
  2. 创建驱动运行用户HwHiAiUser(运行驱动进程的用户),安装驱动时无需指定运行用户,默认即为HwHiAiUser。
    groupadd HwHiAiUser
    useradd -g HwHiAiUser -d /home/HwHiAiUser -m HwHiAiUser -s /bin/bash
  3. 将驱动包和固件包上传到服务器任意目录如“/home”
  4. 进入驱动包和固件包所在目录,执行如下命令,增加驱动和固件包的可执行权限。
    chmod +x Ascend-hdk-xxx-npu-driver_24.1.rc1_linux-aarch64.run
    chmod +x Ascend-hdk-xxx-npu-firmware_7.1.0.6.220.run
  5. 执行以下命令,完成驱动固件安装,软件包默认安装路径为“/usr/local/Ascend”
    • 安装驱动
      执行以下命令,完成驱动安装。
      ./Ascend-hdk-xxx-npu-driver_24.1.rc1_linux-aarch64.run --full  --install-for-all
      • 若执行上述安装命令出现类似如下回显信息,请参见驱动安装缺少依赖报错解决。
        [ERROR]The list of missing tools: lspci,ifconfig,
      • 若执行上述安装命令出现类似如下回显信息,请参见驱动安装过程中出现dkms编译失败报错解决。
        [ERROR]Dkms install failed, details in : var/log/ascend_seclog/ascend_install.log. 
        [ERROR]Driver_ko_install failed, details in : /var/log/ascend_seclog/ascend_install.log.
      • 若系统出现如下关键回显信息,则表示驱动安装成功。
        Driver package installed successfully!
    • 安装固件
      执行以下命令,完成固件安装。
      ./Ascend-hdk-xxx-npu-firmware_7.1.0.6.220.run --full

      若系统出现如下关键回显信息,表示固件安装成功。

      Firmware package installed successfully! Reboot now or after driver installation for the installation/upgrade to take effect 
  6. 执行reboot命令重启系统。
  7. 重启系统后,以root用户登录服务器。参见远程登录服务器
  8. 执行npu-smi info查看驱动加载是否成功。

    若出现类似如下图所示回显信息,说明加载成功。否则,说明加载失败。请联系华为技术支持处理。

升级MCU

MCU是推理卡带外管理模块,具备单板监测、故障上报等功能。出厂时推理卡已集成了初始版本,为了保障所有功能正常使用,请将MCU升级到配套版本。

本章内容主要介绍通过npu-smi工具升级MCU,npu-smi工具可以将单个推理卡的MCU升级到相应版本,如果配备了多个推理卡,需要逐个升级。

  1. 将获取的zip包解压至本地文件夹,获取安装包。

    Ascend-hdk-xxx-mcu_23.2.4.hpm

  2. root用户登录服务器,将安装包上传至Linux系统任意目录下(如“/home”)。
  3. 执行npu-smi info -l命令查询NPU ID(推理卡的设备编号)。
    回显类似如下信息,NPU ID8
            Card Count                     : 1
            NPU ID                     : 8
            Product Name                   : IT21DMPB01
            Serial Number                  : 033EFS10M8000087
            Chip Count                     : 4
  4. 进入MCU软件包所在路径,执行如下命令启动升级(将NPU ID替换为3中查询到的设备编号)。
    npu-smi upgrade -t mcu -i NPU ID -f Ascend-hdk-xxx-mcu_23.2.4.hpm

    出现类似如下回显表示升级成功。

    Start upgrade [100].
            Status                         : OK
            Message                        : The device upgrade is started successfully
            Message                        : need active mcu
  5. 执行如下命令使新版本生效,类似以下回显表示已生效。

    npu-smi upgrade -a mcu -i NPU ID

    Status                         : OK
            Message                : The upgrade has taken effect after performed reboot successfully.
  6. 在生效新版本之后,等待30s,查询MCU版本号,确保升级成功。
    npu-smi upgrade -b mcu -i NPU ID
    Version                        : 23.2.4
    • MCU新版本生效后,如需再次升级,请等待5min后再次操作。
    • 如果升级后不是目标版本或者升级失败,请重新进行升级。如果依然升级失败,请记录故障现象和操作步骤,并联系华为技术支持解决。