华为芯片推理卡驱动安装教程

https://support.huawei.com/enterprise/zh/doc/EDOC1100079287/e7c98605#ZH-CN_TOPIC_0000001257409623

安装驱动

确认安装方式

请根据获取的驱动包类型以及安装场景说明选择驱动安装方式。

表9-3 安装场景说明

驱动包类型

安装场景

安装场景说明

安装方式

二进制驱动包

二进制文件直接安装

该方式适用于《版本配套表》中驱动包默认内核版本和运行环境内核版本一致的场景。

请参见二进制文件直接安装

源码编译安装

该方式适用于《版本配套表》中驱动包默认内核版本和运行环境内核版本不一致的场景。

请参见源码编译安装

源码驱动包

源码编译安装

该方式适用于软件包无须批量安装的场景。

请参见源码编译安装

重构驱动包安装

该方式适用于软件包批量离线安装的场景

请参考重构驱动包安装

系统兼容性要求

  • 支持PCIe MSI-X中断,每个Atlas 300I 推理卡至少可分配464个MSI-X中断。
  • BAR空间大小要求:

    Atlas 300I 推理卡需要三个BAR,空间大小分别为512KB,64MB,256MB

环境检查

表9-4 环境检查

序号

检查项

检查命令

检查说明

1

操作系统内核版本

uname -r

  • 若当前运行环境内核版本和《版本配套表》中操作系统默认内核版本一致,安装驱动请参见二进制文件直接安装。。
  • 若当前运行环境内核版本和《版本配套表》中操作系统默认内核版本不一致,用户可基于安装包驱动源码重新构建安装使用,具体请参见源码编译安装
    说明:
    • 如果Host系统中安装过run包,内核升级后会出现run包启动异常的问题。出现该问题时请参见升级系统内核版本时未卸载run包导致run包不可用解决。
    • 对于UVP操作系统,当前host操作系统的内核版本必须与《版本配套表》中要求一致。
    • EulerOS 2.8场景下,操作系统内核版本必须与《版本配套表》中默认系统版本一致;如果不一致,只能通过升级内核版本的方式解决。否则会导致安装过程报错:部分芯片无法启动。

2

GCC版本

gcc -v

  • 若使用二进制文件直接安装驱动包,对于驱动包名称中包含gcc版本的,要求用户的gcc版本必须与驱动包名称中的gcc版本保持一致;驱动包名称中不包含gcc版本的,安装无须检查GCC版本。
  • 若使用源码编译安装驱动包,GCC版本须不低于《版本配套表》中要求的版本。

3

查询系统是否安装过run包

lsmod|grep drv_pcie_host

  • 如无内容表示未安装过run包。可以直接安装软件包。

  • 如有内容,表示安装过run包。需要先卸载run包后,再安装新版本软件包。

4

检测Atlas 300I 推理卡(型号 3010)是否正常在位

lspci | grep d100

  • 如果服务器上有NN>0)张Atlas 300I 推理卡(型号 3010),回显中含“d100”字段的行数为4N,则表示Atlas 300I 推理卡(型号 3010)正常在位。
    <span style="color:#494949"><span style="background-color:#ffffff"><span style="background-color:#dddddd">88:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d100 (rev 20)
    89:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d100 (rev 20)
    8a:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d100 (rev 20)
    8b:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d100 (rev 20)
    
    ......</span></span></span>
  • 如果Atlas 300I 推理卡(型号 3010)所在的服务器是华为服务器,可通过登录iBMC WebUI界面,进入“信息管理 > 系统信息 ”,单击“其他”,Atlas 300I 推理卡(型号 3010)的PCIe卡信息在“PCIe卡”列表中,表示Atlas 300I 推理卡(型号 3010)正常在位。

二进制文件直接安装

安装驱动(适用于.run格式)

Atlas 300I 推理卡(型号 3010)发布的run安装包是host安装包,用户下载和解压安装包需要在host操作系统完成。本章节介绍宿主机上的安装方法,容器内安装请参见容器内安装

NPU版本号可通过驱动包名称查看,例如驱动包名称为“A300-3010-NPU_Driver-20.0.0-X86_64-Ubuntu18.04.run”,则NPU的版本号为20.0.0。

注意事项
  • run安装包支持一键式安装,用户根据安装需求选择对应参数完成安装,具体请参见参数说明
  • 如果有安装NPU 1.X.X系列版本的驱动包,在安装NPU 20.X.X及以上系列版本的驱动包前需要先卸载低版本驱动。
  • 使用run安装包后,不要手动设置环境变量export LD_LIBRARY_PATH指向之前驱动包的SO文件,否则可能会出现run安装包内工具连接到之前版本的动态库。指向第三方库文件路径、非run安装包发布库文件路径的配置不受影响。
  • 在软件包安装或升级过程中,不允许对Host或Device进行复位或下电操作,否则会出现Device无法正常启动或者升级失败。若出现此问题,解决方法请参见复位或下电导致Device无法正常启动
安装NPU 20.X.X及以上系列版本驱动包

A300-3000-3010-npu-driver_x.x.x_ubuntu18.04-aarch64.run为例介绍.run格式驱动包安装相关指导,具体请根据实际情况进行替换。

首次安装请按照“驱动->固件”的顺序;覆盖安装或升级请按照“固件->驱动”的顺序,分别安装软件包。固件安装请参见安装固件(适用于.run格式)

为保证驱动版本、固件版本和MCU版本三者保持配套关系,请参考《Atlas 300I 推理卡 NPU驱动和固件升级指南(型号 3000, 3010)》中“升级MCU”章节升级对应的MCU组件。

  1. 获取软件包准备的安装包上传至Linux系统任意目录下(如“/opt”)。
  2. 使用PuTTy登录Atlas 300I 推理卡(型号 3010)所在服务器的OS命令行,具体请参见通过PuTTY登录(网口方式)
  3. 执行如下命令,切换至root用户。

    su - root

  4. 执行如下命令,进入软件包所在路径(如“/opt”)。

    cd /opt

  5. 执行如下命令,增加软件包的可执行权限。

    chmod +x A300-3000-3010-npu-driver_x.x.x_ubuntu18.04-aarch64.run

  6. 执行如下命令,校验run安装包的一致性和完整性。

    ./A300-3000-3010-npu-driver_x.x.x_ubuntu18.04-aarch64.run --check

    若出现如下回显信息,表示软件包校验成功。
    <span style="color:#494949"><span style="background-color:#ffffff"><span style="background-color:#dddddd">Verifying archive integrity...  100%   SHA256 checksums are OK. All good.</span></span></span>

    软件包校验使用SHA256加密方式;校验过程中若提示:./A300-3000-3010-npu-driver_x.x.x_ubuntu18.04-aarch64.run does not contain an embedded MD5 checksum.和./A300-3000-3010-npu-driver_x.x.x_ubuntu18.04-aarch64.run does not contain a CRC checksum,表示没有使用MD5和CRC加密方式,可忽略。

  7. 执行安装命令完成安装。

    • 若用户指定安装路径,以“/test/HiAI/”为例。

      可执行./A300-3000-3010-npu-driver_x.x.x_ubuntu18.04-aarch64.run --full --install-path= /test/HiAI/命令,完成安装。

    • 若未指定安装路径,可执行./A300-3000-3010-npu-driver_x.x.x_ubuntu18.04-aarch64.run --full命令,完成安装。

      • 安装run包驱动时,会将动态库libdcmi.so和头文件dcmi_interface_api.h拷贝到“/usr/local/dcmi/”目录下。
      • run安装包安装过程中出现的异常场景及其解决方法请参见常见问题
      • 若创建运行用户是非HwHiAiUser,安装驱动软件包时需要指定运行用户(通过--install-username=username --install-usergroup=usergroup参数指定)。
      • 若用户指定安装路径安装驱动时:
        • 若指定路径不存在,则安装时会自动创建目录,若有多层目录,则只有最后一层目录不存在时会自动创建。
        • 若指定路径已存在:
          • 若该路径下所有层级目录属主为root用户,则请确保所有层级目录权限至少为755。
          • 若该路径下有一层目录属主为非root用户,则请用户自行修改为root属主,并确保所有层级目录权限为755。
      • 软件包默认安装路径:/usr/local/Ascend
      • 安装详细日志路径:/var/log/ascend_seclog/ascend_install.log。
      • 安装后软件包的安装路径、安装命令以及运行用户信息记录路径:/etc/ascend_install.info
      • 使用NPU 20.0.X和NPU 20.1.X系列版本驱动包安装时,以非HwHiAiUser用户为运行用户安装驱动,卸载重启后以HwHiAiUser为运行用户再次安装,若出现“/home/HwHiAiUser: Permission denied”报错,请忽略。
      • 使用NPU 20.2.X及以上系列版本软件包安装时,Device侧系统类日志通过msnpureport工具传输到Host侧进行查看。导出操作以及导出日志的存储路径具体请参见《Ascend 310 黑匣子日志参考》附录中的“msnpureport工具使用”章节。

        容器内不支持查看Device侧系统类日志,也不支持通过msnpureport工具导出Device侧系统类日志。

  8. 若系统显示安装成功提示信息,则表示驱动已安装成功。根据系统提示信息决定是否重启系统,若需要重启,请执行以下操作;否则,请跳过此步骤。

    1. 安装完成后,在host操作系统执行reboot命令复位,或将host机下电再上电。
    2. host复位后,自动安装驱动及服务,Ascend 310自动进入操作系统。

  9. 执行npu-smi info查看驱动加载是否成功。

    若出现如下回显信息,说明加载成功。否则,说明安装失败,请联系华为技术支持处理。
    <span style="color:#494949"><span style="background-color:#ffffff"><span style="background-color:#dddddd">+------------------------------------------------------------------------------+
    | npu-smi 20.0.1                       Version: 1.73.5.10.050                  |
    +-------------------+-----------------+----------------------------------------+
    | NPU     Name      | Health          | Power(W)          Temp(C)              |
    | Chip    Device    | Bus-Id          | AICore(%)         Memory-Usage(MB)     |
    +===================+=================+========================================+
    | 2049    310       | OK              | 12.8              50                   |
    | 0       0         | 0000:85:00.0    | 0                 2621 / 8192          |
    +-------------------+-----------------+----------------------------------------+
    | 2049    310       | OK              | 12.8              51                   |
    | 1       1         | 0000:86:00.0    | 0                 2621 / 8192          |
    +-------------------+-----------------+----------------------------------------+
    | 2049    310       | OK              | 12.8              52                   |
    | 2       2         | 0000:87:00.0    | 0                 2621 / 8192          |
    +-------------------+-----------------+----------------------------------------+
    | 2049    310       | OK              | 12.8              55                   |
    | 3       3         | 0000:88:00.0    | 0                 2621 / 8192          |
    +===================+=================+========================================+</span></span></span>

    回显中“npu-smi”后面的字段为npu-smi工具版本号;“Version:”后面的字段为驱动版本号。

后续处理

使用NPU 20.2.X及以上系列版本软件包安装时,请跳过此步骤。使用NPU 20.0.X和NPU 20.1.X系列版本软件包安装时,ADA默认开放侦听端口22118。为确保系统安全,在商用环境中,需要关闭该端口。

  1. “/usr/local/Ascend/driver”为使用root用户安装驱动(add-ons随驱动安装)的默认安装路径,下文以此为例来说明操作步骤,请根据实际情况替换。

  2. 以root用户安装运行环境时,HwHiAiUser用户为运行环境上的默认进程运行用户,下文以此为例来说明操作步骤。

  1. 使用su - HwHiAiUser命令切换到运行用户,登录运行环境,打开文件“/home/HwHiAiUser/ide_daemon/ide_daemon.cfg”。

    • 如果SOCK_SWITCH=0,则表示ADA端口已关闭。

    • 如果SOCK_SWITCH=1,则表示ADA端口为开启状态,需要用户手动修改为SOCK_SWITCH=0。

    修改完后执行wq!保存退出。

  2. 切换到“/usr/local/Ascend/driver/tools”目录下,依次执行如下命令设置环境变量、重启ada进程或执行reboot命令重启运行环境。
    1. 设置环境变量。

      export LD_LIBRARY_PATH=/usr/local/Ascend/add-ons:$LD_LIBRARY_PATH

    2. 查找ada进程的ID。

      ps -ef | grep ada

    3. 停止ada进程。

      kill -9 ada进程ID

    4. 启动ada进程。

      如果执行如下命令时,提示“ada is exist, don't start again”,则表示系统已自动拉起ada进程,无需再手动执行启动命令。

      /usr/local/Ascend/driver/tools/ada

安装NPU 1.X.X系列版本驱动包

以A800-3010_A300-3010-NPU-Ubuntu16.04.X86-Vx.x.x.run为例介绍.run格式驱动包安装相关指导,具体请根据实际情况进行替换。

目前仅支持full模式进行安装,即全包安装模式。

  1. 获取软件包准备的安装包上传至Linux系统任意目录下(如“/opt”)。
  2. 使用PuTTy登录Atlas 300I 推理卡(型号 3010)所在服务器的OS命令行,具体请参见通过PuTTY登录(网口方式)
  3. 执行如下命令,切换至root用户。

    su - root

  4. 执行如下命令,进入软件包所在路径(如“/opt”)。

    cd /opt

  5. 执行如下命令,增加软件包的可执行权限。

    chmod +x A800-3010_A300-3010-NPU-Ubuntu16.04.X86-Vx.x.x.run

  6. 执行如下命令,校验run安装包的一致性和完整性。

    ./A800-3010_A300-3010-NPU-Ubuntu16.04.X86-Vx.x.x.run --check

    若出现如下回显信息,表示软件包校验成功。
    <span style="color:#494949"><span style="background-color:#ffffff"><span style="background-color:#dddddd">Verifying archive integrity...  100%   SHA256 checksums are OK. All good.</span></span></span>

  7. 设置安装路径。

    • 如果用户需要指定安装路径,则需要先创建安装路径。以“/test/HiAI/”为例,用户先执行mkdir /test/HiAI/命令,完成安装路径的创建,再选择该安装路径进行软件安装。
    • 如果用户不需要指定安装路径,安装包会安装到默认路径“/usr/local/HiAI”下。

  8. 执行安装命令完成安装。

    安装过程支持一键式安装操作。

    • 若用户指定安装路径,以“/test/HiAI/”为例。

      可执行./A800-3010_A300-3010-NPU-Ubuntu16.04.X86-Vx.x.x.run --full --path /test/HiAI/命令,完成安装。

    • 若未指定安装路径,可执行./A800-3010_A300-3010-NPU-Ubuntu16.04.X86-Vx.x.x.run --full命令,完成安装。

    • 安装run包驱动时,会将动态库libdcmi.so和头文件dcmi_interface_api.h拷贝到“/usr/local/dcmi/”目录下。
    • run安装包安装过程中出现的异常场景及其解决方法请参见常见问题
    • 安装过程中Ascend 310驱动、固件安装和升级的日志信息输出在“/var/log/HiAI-install.log”文件中,用户可执行./*.run --viewlog命令,打开日志;npu-smi工具安装的日志信息输出在“/var/log/it_logs”中。
    • 安装驱动过程中出现“drv_dkms_env_check failed, details in : /var/log/HiAI-install.log”的报错,请查看日志信息,日志中显示“The program 'dkms' is currently not installed.”,说明错误为缺少DKMS,请安装DKMS。具体操作请参见安装驱动过程中出现“drv_dkms_env_check failed, details in : /var/log/HiAI-install.log”的报错

  9. run安装包安装完成后需要复位host主机,复位后,运行的Ascend 310软件和mini固件即为安装的最新版本。复位host主机步骤如下。

    1. 安装完成后,在host操作系统执行reboot命令复位,或将host机下电再上电。
    2. host复位后,自动安装驱动及服务,Ascend 310自动进入操作系统。

  10. 执行npu-smi info查看驱动加载是否成功。

    若出现如下回显信息,说明加载成功。否则,说明加载失败,请联系华为技术支持处理。
    <span style="color:#494949"><span style="background-color:#ffffff"><span style="background-color:#dddddd">root@atlas-G560:~# <strong id="ZH-CN_TOPIC_0000001257409623__zh-cn_topic_0000001225336501_zh-cn_topic_0000001125376119_b1821119317539">npu-smi info</strong>
    +------------------------------------------------------------------------------+
    | npu-smi 1.1.2                        Version: 1.1.T19.B880                   |
    +-------------------+-----------------+----------------------------------------+
    | NPU     Name      | Health          | Power(W)          Temp(C)              |
    | Chip              | Bus-Id          | AICore(%)         Memory-Usage(MB)     |
    +===================+=================+========================================+
    | 77      HI1910    | Warning         | 12.8              61                   |
    | 0                 | 0000:4F:00.0    | 0                 2457 / 8192          |
    +-------------------+-----------------+----------------------------------------+
    | 77      HI1910    | OK              | 12.8              58                   |
    | 1                 | 0000:53:00.0    | 0                 2375 / 8192          |
    +-------------------+-----------------+----------------------------------------+
    | 77      HI1910    | OK              | 12.8              57                   |
    | 2                 | 0000:57:00.0    | 0                 2375 / 8192          |
    +-------------------+-----------------+----------------------------------------+
    | 77      HI1910    | OK              | 12.8              58                   |
    | 3                 | 0000:5B:00.0    | 0                 2375 / 8192          |
    +===================+=================+========================================+</span></span></span>

    回显中“npu-smi”后面的字段为npu-smi工具版本号,Version:”后面的字段为驱动/芯片固件版本号。

安装驱动(适用于.rpm格式)

Atlas 300I 推理卡(型号 3010)发布的.rpm格式安装包是host安装包,用户下载和解压安装包需要在host操作系统完成。如果rpm安装包已经安装,则可以选择升级命令进行升级。升级操作可根据具体的升级版本参见对应的《Atlas 300I 推理卡 NPU驱动和固件升级指南(型号 3000, 3010)》。

本章以A300-3010-npu-driver_x.x.x_uvp3.0.rc6-x86_64.rpm为例介绍.rpm格式驱动包安装相关指导,具体请根据实际情况进行替换。

注意事项
  • 使用NPU 20.X.X及以上系列版本的rpm软件包安装时,npu-smi工具集成在驱动包内,安装驱动过程中会自动安装npu-smi工具。
  • 当前rpm包只适配UVP系统,其他环境请不要使用。
  • 当前rpm包安装不支持修改安装路径功能,请按照正常rpm流程安装,不支持rpm包的--force命令安装升级。
  • rpm包与run包为同级别组件,两者不能兼容,即安装run包后不能再安装rpm包、安装rpm包后也不支持再安装run包。
  • Ascend 310内部部分功能,只支持HwHiAiUser用户访问和执行,用户首次安装时系统会自动创建HwHiAiUser用户。
  • 安装完成后需要重启生效。卸载完成后,如需再次安装,需要先重启再安装。
  • rpm包的驱动升级功能不支持回退,如需回退需先删除驱动,再重新安装低版本驱动。
  • 如果已安装NPU 1.X.X系列版本的rpm包,在安装NPU 20.X.X及以上系列版本的rpm包前需要先卸载原版本再安装。
  • 在软件包安装或升级过程中,不允许对Host或Device进行复位或下电操作,否则会出现Device无法正常启动或者升级失败。若出现此问题,解决方法请参见复位或下电导致Device无法正常启动
操作步骤

请按照“驱动->固件”的顺序,分别安装软件包。固件安装请参见安装固件(适用于.rpm格式)

  1. 获取软件包准备的安装包上传至Linux系统任意目录下(如“/opt”)。
  2. 使用PuTTy登录Atlas 300I 推理卡(型号 3010)所在服务器的OS命令行,具体请参见通过PuTTY登录(网口方式)
  3. 执行如下命令,切换至root用户。

    su - root

  4. 在软件包所在路径执行如下命令完成Host侧驱动包安装。

    rpm -ivh A300-3010-npu-driver_x.x.x_uvp3.0.rc6-x86_64.rpm

    软件包安装过程中,若无HwHiAiUser用户系统会自动创建该用户。

  5. 执行如下命令,重启Host侧系统使驱动生效。

    reboot

  6. 验证驱动安装是否成功。

    1. 执行如下命令,查看Atlas 300I 推理卡(型号 3010)是否正常在位。

      lspci | grep d100

      如果服务器上有NN>0)张Atlas 300I 推理卡(型号 3010),回显中含“d100”字段的行数为4N,则表示Atlas 300I 推理卡(型号 3010)正常在位。
      <span style="color:#494949"><span style="background-color:#ffffff"><span style="background-color:#dddddd">91:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d100 (rev 20)
      92:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d100 (rev 20)
      93:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d100 (rev 20)
      94:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d100 (rev 20)</span></span></span>
    2. 执行如下命令,查看驱动安装是否成功。

      npu-smi info

      回显如下类似信息,说明安装成功。否则,说明安装失败,请联系华为工程师处理。

      <span style="color:#494949"><span style="background-color:#ffffff"><span style="background-color:#dddddd">+------------------------------------------------------------------------------+
      | npu-smi 20.2.0                       Version: 20.2.0                         |
      +-------------------+-----------------+----------------------------------------+
      | NPU     Name      | Health          | Power(W)          Temp(C)              |
      | Chip    Device    | Bus-Id          | AICore(%)         Memory-Usage(MB)     |
      +===================+=================+========================================+
      | 215     310       | OK              | 12.8              56                   |
      | 0       0         | 0000:DA:00.0    | 0                 2703 / 8192          |
      +-------------------+-----------------+----------------------------------------+
      | 215     310       | OK              | 12.8              57                   |
      | 1       1         | 0000:DC:00.0    | 0                 2703 / 8192          |
      +-------------------+-----------------+----------------------------------------+
      | 215     310       | OK              | 12.8              57                   |
      | 2       2         | 0000:DD:00.0    | 0                 2703 / 8192          |
      +-------------------+-----------------+----------------------------------------+
      | 215     310       | OK              | 12.8              55                   |
      | 3       3         | 0000:DB:00.0    | 0                 2703 / 8192          |
      +===================+=================+========================================+</span></span></span>

      安装过程中的日志信息输出在“/var/log/ascend_seclog/ascend_install.log”文件中,用户可以执行vim /var/log/ascend_seclog/ascend_install.log命令打开日志。

源码编译安装

当用户当前操作系统内核版本更新或与默认不一致,可以基于安装包驱动源码重新构建并安装使用,该场景下不会触发内核版本升级,会基于用户当前内核版本编译出相应的内核驱动。软件包在安装时会自动触发驱动源码编译,编译完成后自动进行软件包安装。

如果使用该功能,则需要提前检查并安装相关依赖工具。具体操作请切换到root用户执行。

安装依赖

源码驱动包特有安装依赖
  • make工具

    执行make -v命令,若能查询到make工具的版本,则make已安装。

  • 默认内核源码路径:例如:/lib/modules/`uname -r`/build
    执行ls /lib/modules/`uname -r`/build命令,查看路径是否存在。
    • 若存在,安装通用软件包时则会自动使用内核进行驱动编译。
    • 若不存在,您可以在安装时提供对应的源码路径,具体请参见8

    或dkms等安装依赖,具体请参见以下各操作系统。对于UOS 20kylinosv10SP1NeoKylin 7.6、Tlinux 2.4操作系统,请忽略dkms依赖检查。

    以下操作系统中的DKMS软件包建议使用dkms-2.6.1-1.el7.noarch.rpm。

Ubuntu 18.04/16.04操作系统

需要安装dkms、gcc、linux-header软件包。执行如下命令检查:

dpkg-query -s dkms

dpkg-query -s gcc

dpkg-query -s linux-headers-$(uname -r)

若未安装请自行在相应操作系统厂商网站获取并安装。

CentOS 7.4/7.6/8.2操作系统

需要安装dkms、gcc、kernel-headers、kernel-devel软件包,CentOS 8.2+x86系统还需安装elfutils-libelf-devel软件包。执行如下命令检查:

rpm -qa | grep dkms

rpm -qa | grep gcc

rpm -qa | grep kernel-headers-$(uname -r)

rpm -qa | grep elfutils-libelf-devel 仅CentOS 8.2+x86系统需要查询

rpm -qa | grep kernel-devel-$(uname -r)

若未安装请自行在相应操作系统厂商网站获取并安装。

EulerOS 2.8/2.5操作系统

需要安装gcc、kernel-headers、kernel-devel软件包。执行如下命令检查:

rpm -qa | grep gcc

rpm -qa | grep kernel-headers-$(uname -r)

rpm -qa | grep kernel-devel-$(uname -r)

若未安装请自行在相应操作系统厂商网站获取并安装。

BC-Linux 7.6操作系统

需要安装dkms、gcc、kernel-headers、kernel-devel软件包。执行如下命令检查:

rpm -qa | grep dkms

rpm -qa | grep gcc

rpm -qa | grep kernel-bek-headers-$(uname -r)

rpm -qa | grep kernel-bek-devel-$(uname -r)

若未安装请自行在相应操作系统厂商网站获取并安装。

SUSE12SP4/SUSE12SP5操作系统
  1. 需要安装gcc、kernel-default、kernel-default-devel软件包。执行如下命令检查:

    rpm -qa | grep gcc

    rpm -qa | grep kernel-default

    rpm -qa | grep kernel-default-devel

    若未安装请自行在相应操作系统厂商网站获取并安装。

  2. 检查配置文件“10-unsupported-modules.conf”中“allow_unsupported_modules ”的值是否为1。

    执行cat /etc/modprobe.d/10-unsupported-modules.conf命令,查看modprobe限制配置文件中“allow_unsupported_modules ”的值是否“1”。

    如果不是,使用vi /etc/modprobe.d/10-unsupported-modules.conf命令修改“allow_unsupported_modules ”的值为“1”。

    在SUSE12SP4/SUSE12SP5操作系统下,可通过“10-unsupported-modules.conf”配置文件控制非系统自带驱动在系统启动过程中的加载。默认情况下,“10-unsupported-modules.conf”配置文件中“allow_unsupported_modules ”的值为“0”,表示不允许系统启动过程中加载非系统自带驱动;“allow_unsupported_modules ”的值设置为“1”时,将允许系统启动过程中加载非系统自带驱动。

EulerOS 2.9操作系统
需要安装kernel-headers、gcc 7.3.0、elfutils-devel、make等软件包。操作如下:
  1. 请获取对应版本OS的“devel_tools.tar.gz”工具组件。
  2. 上传“devel_tools.tar.gz”到运行环境的任一目录。如:/opt下。
  3. 进入“devel_tools.tar.gz”所在路径并进行解压。

    cd /opt

    tar -xzvf devel_tools.tar.gz

  4. 3的解压目录下,执行以下命令安装kernel-headers、gcc 7.3.0、elfutils-devel、make等软件包。
    • 对于EulerOS 2.9+aarch64系统,请执行如下命令:

      rpm -ivh kernel-headers-4.19.90-vhulk2009.2.0.h269.eulerosv2r9.aarch64.rpm kernel-devel-4.19.90-vhulk2009.2.0.h269.eulerosv2r9.aarch64.rpm

      rpm -ivh binutils-2.34-1.h11.eulerosv2r9.aarch64.rpm binutils-extra-2.34-1.h11.eulerosv2r9.aarch64.rpm binutils-devel-2.34-1.h11.eulerosv2r9.aarch64.rpm zlib-devel-1.2.11-17.eulerosv2r9.aarch64.rpm cpp-7.3.0-20190804.h39.eulerosv2r9.aarch64.rpm libmpc-1.1.0-4.eulerosv2r9.aarch64.rpm glibc-devel-2.28-59.eulerosv2r9.aarch64.rpm libxcrypt-devel-4.4.8-4.h2.eulerosv2r9.aarch64.rpm

      rpm -ivh gcc-7.3.0-20190804.h39.eulerosv2r9.aarch64.rpm

      rpm -ivh elfutils-devel-0.179-1.h3.eulerosv2r9.aarch64.rpm

      rpm -ivh make-4.2.1-15.eulerosv2r9.aarch64.rpm

    • 对于EulerOS 2.9+x86系统,请执行如下命令:

      rpm -ivh kernel-headers-4.18.0-147.5.1.0.h208.eulerosv2r9.x86_64.rpm kernel-devel-4.18.0-147.5.1.0.h208.eulerosv2r9.x86_64.rpm

      rpm -ivh binutils-2.34-1.h11.eulerosv2r9.x86_64.rpm binutils-extra-2.34-1.h11.eulerosv2r9.x86_64.rpm zlib-devel-1.2.11-17.eulerosv2r9.x86_64.rpm binutils-devel-2.34-1.h11.eulerosv2r9.x86_64.rpm libmpc-1.1.0-4.eulerosv2r9.x86_64.rpm cpp-7.3.0-20190804.h39.eulerosv2r9.x86_64.rpm libxcrypt-devel-4.4.8-4.h2.eulerosv2r9.x86_64.rpm glibc-devel-2.28-59.eulerosv2r9.x86_64.rpm

      rpm -ivh gcc-7.3.0-20190804.h39.eulerosv2r9.x86_64.rpm

      rpm -ivh elfutils-devel-0.179-1.h3.eulerosv2r9.x86_64.rpm

      rpm -ivh make-4.2.1-15.eulerosv2r9.x86_64.rpm

Tlinux 2.4操作系统
由于内核进行过针对性适配,需要使用版本为8.2.1的GCC编译器,因此编译驱动前需保证8.2.1的GCC编译器已经部署。操作步骤如下:
  1. 获取GCC 8.2.1版本编译器的安装包。软件包获取网址:https://mirrors.tencent.com/tlinux/2.4/arm64/tlinux-sclo/aarch64/tl/devtoolset-8/devtoolset-8-gcc-8.2.1-3.tl2.aarch64.rpm
  2. 登录运行环境。
  3. 上传gcc编译器的安装包到指定路径下,如“/tmp”。
  4. 执行以下命令安装GCC编译器。

    rpm -Uvh devtoolset-8-gcc-8.2.1-3.tl2.aarch64.rpm --force --nodeps

  5. 安装完成后,执行以下命令查找GCC 8.2.1的可以执行文件所在路径。

    find / -name gcc

    执行文件路径如下红框所示:

  6. 配置环境变量。

    export PATH=/opt/rh/devtoolset-8/root/usr/bin/:$PATH

  7. 执行以下命令,验证GCC编译器是否安装成功。

    gcc --version

    如出现以下回显,安装后的gcc版本和目标版本一致,则表示安装成功。

安装驱动(适用于.run格式)

Atlas 300I 推理卡(型号 3010)发布的run安装包是host安装包,用户下载和解压安装包需要在host操作系统完成。本章节介绍宿主机上的安装方法,容器内安装请参见容器内安装

NPU版本号可通过驱动包名称查看,例如驱动包名称为“A300-3010-NPU_Driver-20.0.0-X86_64-Ubuntu18.04.run”,则NPU的版本号为20.0.0。

前提条件

驱动包安装前需要检查并安装相关依赖,具体请参见安装依赖

注意事项
  • run安装包支持一键式安装,用户根据安装需求选择对应参数完成安装,具体请参见参数说明
  • 如果有安装NPU 1.X.X系列版本的驱动包,在安装NPU 20.X.X及以上系列版本的驱动包前需要先卸载低版本驱动。
  • 使用run安装包后,不要手动设置环境变量export LD_LIBRARY_PATH指向之前驱动包的SO文件,否则可能会出现run安装包内工具连接到之前版本的动态库。指向第三方库文件路径、非run安装包发布库文件路径的配置不受影响。
  • 在软件包安装或升级过程中,不允许对Host或Device进行复位或下电操作,否则会出现Device无法正常启动或者升级失败。若出现此问题,解决方法请参见复位或下电导致Device无法正常启动
安装NPU 20.X.X及以上系列版本驱动包

A300-3000-3010-npu-driver_x.x.x_ubuntu18.04-aarch64.run为例介绍.run格式驱动包安装相关指导,具体请根据实际情况进行替换。

首次安装请按照“驱动->固件”的顺序;覆盖安装或升级请按照“固件->驱动”的顺序,分别安装软件包。固件安装请参见安装固件(适用于.run格式)

为保证驱动版本、固件版本和MCU版本三者保持配套关系,请参考《Atlas 300I 推理卡 NPU驱动和固件升级指南(型号 3000, 3010)》中“升级MCU”章节升级对应的MCU组件。

  1. 获取软件包准备的安装包上传至Linux系统任意目录下(如“/opt”)。
  2. 使用PuTTy登录Atlas 300I 推理卡(型号 3010)所在服务器的OS命令行,具体请参见通过PuTTY登录(网口方式)
  3. 执行如下命令,切换至root用户。

    su - root

  4. 执行如下命令,进入软件包所在路径(如“/opt”)。

    cd /opt

  5. 执行如下命令,增加软件包的可执行权限。

    chmod +x A300-3000-3010-npu-driver_x.x.x_ubuntu18.04-aarch64.run

  6. 执行如下命令,校验run安装包的一致性和完整性。

    ./A300-3000-3010-npu-driver_x.x.x_ubuntu18.04-aarch64.run --check

    若出现如下回显信息,表示软件包校验成功。
    <span style="color:#494949"><span style="background-color:#ffffff"><span style="background-color:#dddddd">Verifying archive integrity...  100%   SHA256 checksums are OK. All good.</span></span></span>

    软件包校验使用SHA256加密方式;校验过程中若提示:./A300-3000-3010-npu-driver_x.x.x_ubuntu18.04-aarch64.run does not contain an embedded MD5 checksum.和./A300-3000-3010-npu-driver_x.x.x_ubuntu18.04-aarch64.run does not contain a CRC checksum,表示没有使用MD5和CRC加密方式,可忽略。

  7. 执行安装命令完成安装。

    • 若用户指定安装路径,以“/test/HiAI/”为例。

      可执行./A300-3000-3010-npu-driver_x.x.x_ubuntu18.04-aarch64.run --full --install-path= /test/HiAI/命令,完成安装。

    • 若未指定安装路径,可执行./A300-3000-3010-npu-driver_x.x.x_ubuntu18.04-aarch64.run --full命令,完成安装。

      • 安装run包驱动时,会将动态库libdcmi.so和头文件dcmi_interface_api.h拷贝到“/usr/local/dcmi/”目录下。
      • run安装包安装过程中出现的异常场景及其解决方法请参见常见问题
      • 若创建运行用户是非HwHiAiUser,安装驱动软件包时需要指定运行用户(通过--install-username=username --install-usergroup=usergroup参数指定)。
      • 若用户指定安装路径安装驱动时:
        • 若指定路径不存在,则安装时会自动创建目录,若有多层目录,则只有最后一层目录不存在时会自动创建。
        • 若指定路径已存在:
          • 若该路径下所有层级目录属主为root用户,则请确保所有层级目录权限至少为755。
          • 若该路径下有一层目录属主为非root用户,则请用户自行修改为root属主,并确保所有层级目录权限为755。
      • 软件包默认安装路径:/usr/local/Ascend
      • 安装详细日志路径:/var/log/ascend_seclog/ascend_install.log。
      • 安装后软件包的安装路径、安装命令以及运行用户信息记录路径:/etc/ascend_install.info
      • 使用NPU 20.0.X和NPU 20.1.X系列版本驱动包安装时,以非HwHiAiUser用户为运行用户安装驱动,卸载重启后以HwHiAiUser为运行用户再次安装,若出现“/home/HwHiAiUser: Permission denied”报错,请忽略。
      • 使用NPU 20.2.X及以上系列版本软件包安装时,Device侧系统类日志通过msnpureport工具传输到Host侧进行查看。导出操作以及导出日志的存储路径具体请参见《Ascend 310 黑匣子日志参考》附录中的“msnpureport工具使用”章节。

        容器内不支持查看Device侧系统类日志,也不支持通过msnpureport工具导出Device侧系统类日志。

  8. (可选)对于源码驱动包,安装时若出现以下回显,说明未安装dkms,默认内核源码路径如“/lib/modules/`uname -r`/build”不存在。请根据系统提示输入相应内容:

    <span style="color:#494949"><span style="background-color:#ffffff"><span style="background-color:#dddddd">[WARNING]rebuild ko has something wrong, detail in /var/log/ascend_seclog/ascend_rebuild.log
    Do you want to try build driver after input kernel absolute path? [y/n]:</span></span></span>

    若需要继续安装,请输入y。

    出现如下回显后,请根据提示输入您提供的内核源码的实际路径,如:/lib/modules/`uname -r`/build-bak。

    <span style="color:#494949"><span style="background-color:#ffffff"><span style="background-color:#dddddd">Please input your kernel absolute path:</span></span></span>

    按“Enter”键继续安装。

    • 若已安装dkms及相应kernel-header、kernel-devel等组件,则会自动执行dkms驱动编译安装。
    • 若未安装dkms,但默认内核源码路径如“/lib/modules/`uname -r`/build”已存在,则会自动使用该内核进行驱动编译。

  9. 若系统显示安装成功提示信息,则表示驱动已安装成功。根据系统提示信息决定是否重启系统,若需要重启,请执行以下操作;否则,请跳过此步骤。

    1. 安装完成后,在host操作系统执行reboot命令复位,或将host机下电再上电。
    2. host复位后,自动安装驱动及服务,Ascend 310自动进入操作系统。

  10. 执行npu-smi info查看驱动加载是否成功。

    若出现如下回显信息,说明加载成功。否则,说明安装失败,请联系华为技术支持处理。
    <span style="color:#494949"><span style="background-color:#ffffff"><span style="background-color:#dddddd">+------------------------------------------------------------------------------+
    | npu-smi 20.0.1                       Version: 1.73.5.10.050                  |
    +-------------------+-----------------+----------------------------------------+
    | NPU     Name      | Health          | Power(W)          Temp(C)              |
    | Chip    Device    | Bus-Id          | AICore(%)         Memory-Usage(MB)     |
    +===================+=================+========================================+
    | 2049    310       | OK              | 12.8              50                   |
    | 0       0         | 0000:85:00.0    | 0                 2621 / 8192          |
    +-------------------+-----------------+----------------------------------------+
    | 2049    310       | OK              | 12.8              51                   |
    | 1       1         | 0000:86:00.0    | 0                 2621 / 8192          |
    +-------------------+-----------------+----------------------------------------+
    | 2049    310       | OK              | 12.8              52                   |
    | 2       2         | 0000:87:00.0    | 0                 2621 / 8192          |
    +-------------------+-----------------+----------------------------------------+
    | 2049    310       | OK              | 12.8              55                   |
    | 3       3         | 0000:88:00.0    | 0                 2621 / 8192          |
    +===================+=================+========================================+</span></span></span>

    回显中“npu-smi”后面的字段为npu-smi工具版本号;“Version:”后面的字段为驱动版本号。

后续处理

使用NPU 20.2.X及以上系列版本软件包安装时,请跳过此步骤。使用NPU 20.0.X和NPU 20.1.X系列版本软件包安装时,ADA默认开放侦听端口22118。为确保系统安全,在商用环境中,需要关闭该端口。

  1. “/usr/local/Ascend/driver”为使用root用户安装驱动(add-ons随驱动安装)的默认安装路径,下文以此为例来说明操作步骤,请根据实际情况替换。

  2. 以root用户安装运行环境时,HwHiAiUser用户为运行环境上的默认进程运行用户,下文以此为例来说明操作步骤。

  1. 使用su - HwHiAiUser命令切换到运行用户,登录运行环境,打开文件“/home/HwHiAiUser/ide_daemon/ide_daemon.cfg”。

    • 如果SOCK_SWITCH=0,则表示ADA端口已关闭。

    • 如果SOCK_SWITCH=1,则表示ADA端口为开启状态,需要用户手动修改为SOCK_SWITCH=0。

    修改完后执行wq!保存退出。

  2. 切换到“/usr/local/Ascend/driver/tools”目录下,依次执行如下命令设置环境变量、重启ada进程或执行reboot命令重启运行环境。
    1. 设置环境变量。

      export LD_LIBRARY_PATH=/usr/local/Ascend/add-ons:$LD_LIBRARY_PATH

    2. 查找ada进程的ID。

      ps -ef | grep ada

    3. 停止ada进程。

      kill -9 ada进程ID

    4. 启动ada进程。

      如果执行如下命令时,提示“ada is exist, don't start again”,则表示系统已自动拉起ada进程,无需再手动执行启动命令。

      /usr/local/Ascend/driver/tools/ada

安装NPU 1.X.X系列版本驱动包

以A800-3010_A300-3010-NPU-Ubuntu16.04.X86-Vx.x.x.run为例介绍.run格式驱动包安装相关指导,具体请根据实际情况进行替换。

目前仅支持full模式进行安装,即全包安装模式。

  1. 获取软件包准备的安装包上传至Linux系统任意目录下(如“/opt”)。
  2. 使用PuTTy登录Atlas 300I 推理卡(型号 3010)所在服务器的OS命令行,具体请参见通过PuTTY登录(网口方式)
  3. 执行如下命令,切换至root用户。

    su - root

  4. 执行如下命令,进入软件包所在路径(如“/opt”)。

    cd /opt

  5. 执行如下命令,增加软件包的可执行权限。

    chmod +x A800-3010_A300-3010-NPU-Ubuntu16.04.X86-Vx.x.x.run

  6. 执行如下命令,校验run安装包的一致性和完整性。

    ./A800-3010_A300-3010-NPU-Ubuntu16.04.X86-Vx.x.x.run --check

    若出现如下回显信息,表示软件包校验成功。
    <span style="color:#494949"><span style="background-color:#ffffff"><span style="background-color:#dddddd">Verifying archive integrity...  100%   SHA256 checksums are OK. All good.</span></span></span>

  7. 设置安装路径。

    • 如果用户需要指定安装路径,则需要先创建安装路径。以“/test/HiAI/”为例,用户先执行mkdir /test/HiAI/命令,完成安装路径的创建,再选择该安装路径进行软件安装。
    • 如果用户不需要指定安装路径,安装包会安装到默认路径“/usr/local/HiAI”下。

  8. 执行安装命令完成安装。

    安装过程支持一键式安装操作。

    • 若用户指定安装路径,以“/test/HiAI/”为例。

      可执行./A800-3010_A300-3010-NPU-Ubuntu16.04.X86-Vx.x.x.run --full --path /test/HiAI/命令,完成安装。

    • 若未指定安装路径,可执行./A800-3010_A300-3010-NPU-Ubuntu16.04.X86-Vx.x.x.run --full命令,完成安装。

    • 安装run包驱动时,会将动态库libdcmi.so和头文件dcmi_interface_api.h拷贝到“/usr/local/dcmi/”目录下。
    • run安装包安装过程中出现的异常场景及其解决方法请参见常见问题
    • 安装过程中Ascend 310驱动、固件安装和升级的日志信息输出在“/var/log/HiAI-install.log”文件中,用户可执行./*.run --viewlog命令,打开日志;npu-smi工具安装的日志信息输出在“/var/log/it_logs”中。
    • 安装驱动过程中出现“drv_dkms_env_check failed, details in : /var/log/HiAI-install.log”的报错,请查看日志信息,日志中显示“The program 'dkms' is currently not installed.”,说明错误为缺少DKMS,请安装DKMS。具体操作请参见安装驱动过程中出现“drv_dkms_env_check failed, details in : /var/log/HiAI-install.log”的报错

  9. run安装包安装完成后需要复位host主机,复位后,运行的Ascend 310软件和mini固件即为安装的最新版本。复位host主机步骤如下。

    1. 安装完成后,在host操作系统执行reboot命令复位,或将host机下电再上电。
    2. host复位后,自动安装驱动及服务,Ascend 310自动进入操作系统。

  10. 执行npu-smi info查看驱动加载是否成功。

    若出现如下回显信息,说明加载成功。否则,说明加载失败,请联系华为技术支持处理。
    <span style="color:#494949"><span style="background-color:#ffffff"><span style="background-color:#dddddd">root@atlas-G560:~# <strong id="ZH-CN_TOPIC_0000001257209637__zh-cn_topic_0000001180018332_zh-cn_topic_0000001125040051_zh-cn_topic_0000001125376119_b1821119317539">npu-smi info</strong>
    +------------------------------------------------------------------------------+
    | npu-smi 1.1.2                        Version: 1.1.T19.B880                   |
    +-------------------+-----------------+----------------------------------------+
    | NPU     Name      | Health          | Power(W)          Temp(C)              |
    | Chip              | Bus-Id          | AICore(%)         Memory-Usage(MB)     |
    +===================+=================+========================================+
    | 77      HI1910    | Warning         | 12.8              61                   |
    | 0                 | 0000:4F:00.0    | 0                 2457 / 8192          |
    +-------------------+-----------------+----------------------------------------+
    | 77      HI1910    | OK              | 12.8              58                   |
    | 1                 | 0000:53:00.0    | 0                 2375 / 8192          |
    +-------------------+-----------------+----------------------------------------+
    | 77      HI1910    | OK              | 12.8              57                   |
    | 2                 | 0000:57:00.0    | 0                 2375 / 8192          |
    +-------------------+-----------------+----------------------------------------+
    | 77      HI1910    | OK              | 12.8              58                   |
    | 3                 | 0000:5B:00.0    | 0                 2375 / 8192          |
    +===================+=================+========================================+</span></span></span>

    回显中“npu-smi”后面的字段为npu-smi工具版本号,Version:”后面的字段为驱动/芯片固件版本号。

重构驱动包安装

本章内容仅适用于NPU 20.1.X及以上系列版本。

安装依赖

GCC和内核源码

确认目标OS及其内核版本号对应的GCC及内核源码是否已存在,具体请参见安装依赖

makeself 2.4.0工具

下载开源工具:makeself 2.4.0。下载地址请参见:https://github.com/megastep/makeselfhttps://github.com/megastep/makeself/releases/tag/release-2.4.0

pigz工具
执行如下命令,检查pigz工具是否已安装。例如:
  • Ubuntu操作系统:

    dpkg-query -s pigz

  • CentOS操作系统:

    rpm -qa |grep pigz

若未安装请使用对应的软件管理器进行安装。例如:

  • Ubuntu操作系统:

    apt install pigz

  • CentOS操作系统:

    yum install pigz

重构驱动包

用户可以根据本章节内容,构建一个满足目标OS版本,内核版本,gcc版本要求的驱动安装包。

前提条件

编译前需要安装相关依赖,具体请参见安装依赖

操作步骤
  1. 根据获取软件包获取源码驱动包和重构工具包。
  2. 上传源码驱动包、重构工具包、开源软件“makeself-release-2.4.0.zip”到运行环境的同一目录。如:/opt下。
  3. 执行以下命令,进入2软件包所在路径,如/opt下。

    cd /opt

  4. 执行以下命令,增加源码驱动包的执行权限。

    命令:chmod +x *.run

    示例:chmod +x A300-3010-npu-driver_20.1.0_linux-x86_64.run

  5. 执行以下命令,解压源码驱动包到指定目录。

    命令:./*.run --noexec --extract=目标路径

    示例:./A300-3010-npu-driver_20.1.0_linux-x86_64.run --noexec --extract=./tmp

  6. 执行以下命令,解压重构工具包到当前目录。

    命令:tar -xzvf 重构工具包名称 --strip-components 1

    示例:tar -xzvf A300-3010-npu-driver-repack-tools_20.1.0.tar.gz --strip-components 1

  7. 执行以下命令,解压软件包“makeself-release-2.4.0.zip”。

    unzip makeself-release-2.4.0.zip

  8. 执行以下命令,构建新驱动包。

    命令:bash build.sh makeself.sh路径 包解压的路径 输出包名

    示例:bash build.sh ./makeself-release-2.4.0/makeself.sh tmp/ A300-3010-npu-driver-repack.run

  9. 请参见安装驱动(适用于.run格式),安装驱动。

安装驱动(适用于.run格式)

Atlas 300I 推理卡(型号 3010)发布的run安装包是host安装包,用户下载和解压安装包需要在host操作系统完成。本章节介绍宿主机上的安装方法,容器内安装请参见容器内安装

本章以重构驱动包A300-3010-npu-driver-repack.run为例介绍.run格式驱动包安装相关指导,具体请根据实际情况进行替换。

注意事项
  • run安装包支持一键式安装,用户根据安装需求选择对应参数完成安装,具体请参见参数说明
  • 如果有安装NPU 1.X.X系列版本的驱动包,在安装NPU 20.X.X及以上系列版本的驱动包前需要先卸载低版本驱动。
  • 使用run安装包后,不要手动设置环境变量export LD_LIBRARY_PATH指向之前驱动包的SO文件,否则可能会出现run安装包内工具连接到之前版本的动态库。指向第三方库文件路径、非run安装包发布库文件路径的配置不受影响。
  • 在软件包安装或升级过程中,不允许对Host或Device进行复位或下电操作,否则会出现Device无法正常启动或者升级失败。若出现此问题,解决方法请参见复位或下电导致Device无法正常启动
操作步骤

首次安装请按照“驱动->固件”的顺序;覆盖安装或升级请按照“固件->驱动”的顺序,分别安装软件包。固件安装请参见安装固件(适用于.run格式)

为保证驱动版本、固件版本和MCU版本三者保持配套关系,请参考《Atlas 300I 推理卡 NPU驱动和固件升级指南(型号 3000, 3010)》中“升级MCU”章节升级对应的MCU组件。

  1. 重构驱动包构建的驱动包上传至Linux系统任意目录下(如“/opt”)。
  2. 使用PuTTy登录Atlas 300I 推理卡(型号 3010)所在服务器的OS命令行,具体请参见通过PuTTY登录(网口方式)
  3. 执行如下命令,切换至root用户。

    su - root

  4. 执行如下命令,进入软件包所在路径(如/opt)。

    cd /opt

  5. 执行如下命令,校验run安装包的一致性和完整性。

    ./A300-3010-npu-driver-repack.run --check

    出现如下回显信息,表示软件包校验成功。
    <span style="color:#494949"><span style="background-color:#ffffff"><span style="background-color:#dddddd">Verifying archive integrity...  100%   SHA256 checksums are OK. All good.</span></span></span>

    软件包校验使用SHA256加密方式;校验过程中若提示:./A300-3010-npu-driver-repack.run does not contain an embedded MD5 checksum.和./A300-3010-npu-driver-repack.run does not contain a CRC checksum,表示没有使用MD5和CRC加密方式,可忽略。

  6. 执行安装命令完成安装。

    • 若用户指定安装路径,以“/test/HiAI/”为例。

      可执行./A300-3010-npu-driver-repack.run --full --install-path= /test/HiAI/命令,完成安装。

    • 若未指定安装路径,可执行./A300-3010-npu-driver-repack.run --full命令,完成安装。

      • 安装run包驱动时,会将动态库libdcmi.so和头文件dcmi_interface_api.h拷贝到“/usr/local/dcmi/”目录下。
      • run安装包安装过程中出现的异常场景及其解决方法请参见常见问题
      • 若创建运行用户是非HwHiAiUser,安装驱动软件包时需要指定运行用户(通过--install-username=username --install-usergroup=usergroup参数指定)。
      • 若用户指定安装路径安装驱动时:
        • 若指定路径不存在,则安装时会自动创建目录,若有多层目录,则只有最后一层目录不存在时会自动创建。
        • 若指定路径已存在:
          • 若该路径下所有层级目录属主为root用户,则请确保所有层级目录权限至少为755。
          • 若该路径下有一层目录属主为非root用户,则请用户自行修改为root属主,并确保所有层级目录权限为755。
      • 软件包默认安装路径:/usr/local/Ascend
      • 安装详细日志路径:/var/log/ascend_seclog/ascend_install.log。
      • 安装后软件包的安装路径、安装命令以及运行用户信息记录路径:/etc/ascend_install.info
      • 使用NPU 20.0.X和NPU 20.1.X系列版本驱动包安装时,以非HwHiAiUser用户为运行用户安装驱动,卸载重启后以HwHiAiUser为运行用户再次安装,若出现“/home/HwHiAiUser: Permission denied”报错,请忽略。
      • 使用NPU 20.2.X及以上系列版本软件包安装时,Device侧系统类日志通过msnpureport工具传输到Host侧进行查看。导出操作以及导出日志的存储路径具体请参见《Ascend 310 黑匣子日志参考》附录中的“msnpureport工具使用”章节。

        容器内不支持查看Device侧系统类日志,也不支持通过msnpureport工具导出Device侧系统类日志。

  7. 若系统显示安装成功提示信息,则表示驱动已安装成功。根据系统提示信息决定是否重启系统,若需要重启,请执行以下操作;否则,请跳过此步骤。

    1. 安装完成后,在host操作系统执行reboot命令复位,或将host机下电再上电。
    2. host复位后,自动安装驱动及服务,Ascend 310自动进入操作系统。

  8. 执行npu-smi info查看驱动加载是否成功。

    回显如下类似信息,说明加载成功。否则,说明安装失败,请联系华为技术支持处理。
    <span style="color:#494949"><span style="background-color:#ffffff"><span style="background-color:#dddddd">+------------------------------------------------------------------------------+
    | npu-smi 20.0.1                       Version: 1.73.5.10.050                  |
    +-------------------+-----------------+----------------------------------------+
    | NPU     Name      | Health          | Power(W)          Temp(C)              |
    | Chip    Device    | Bus-Id          | AICore(%)         Memory-Usage(MB)     |
    +===================+=================+========================================+
    | 2049    310       | OK              | 12.8              50                   |
    | 0       0         | 0000:85:00.0    | 0                 2621 / 8192          |
    +-------------------+-----------------+----------------------------------------+
    | 2049    310       | OK              | 12.8              51                   |
    | 1       1         | 0000:86:00.0    | 0                 2621 / 8192          |
    +-------------------+-----------------+----------------------------------------+
    | 2049    310       | OK              | 12.8              52                   |
    | 2       2         | 0000:87:00.0    | 0                 2621 / 8192          |
    +-------------------+-----------------+----------------------------------------+
    | 2049    310       | OK              | 12.8              55                   |
    | 3       3         | 0000:88:00.0    | 0                 2621 / 8192          |
    +===================+=================+========================================+</span></span></span>

    回显中“npu-smi”后面的字段为npu-smi工具版本号;“Version:”后面的字段为驱动版本号。

后续处理

使用NPU 20.2.X及以上系列版本软件包安装时,请跳过此步骤。使用NPU 20.0.X和NPU 20.1.X系列版本软件包安装时,ADA默认开放侦听端口22118。为确保系统安全,在商用环境中,需要关闭该端口。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AI生成曾小健

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值