3.1. Linux主机端安装与部署

在Linux主机端,软件平台提供包含完整开发环境的Docker镜像,其内部预置HMQuantool、TCIM等软件组件。用户可以在Docker镜像中快速构建、运行和测试软件平台。

此外,用户也可使用 运行时开发工具包安装与部署,在后摩芯片上部署、推理模型,及执行推理示例。

3.1.1. Docker镜像安装与部署

3.1.1.1. 使用依赖

Docker镜像依赖如下:

  • 系统环境:

    • Ubuntu 24.04(x86_64):支持模型量化、编译和推理。

    • Ubuntu 22.04(x86_64):仅支持模型推理。

    • Ubuntu 20.04(x86_64、AArch64):仅支持模型推理。

  • Docker:20.10.17+

  • 网络连接:需支持访问公网,用于安装依赖或远程访问资源。

3.1.1.2. 操作步骤

Linux主机端安装和部署流程如下:

../_images/docker.png

图 3.1 Linux主机端部署说明

执行下面步骤,在Linux主机端安装和部署软件平台:

  1. 安装最新版本驱动。详情参看《后摩大道® M50 软件平台驱动安装指南》。

  2. 烧写和升级后摩设备固件镜像。详情参看《后摩大道® M50 HmUpdateTool 工具使用指南》。

  3. 检测 使用依赖

  4. 下载Docker镜像,用于模型量化、编译和推理。

    1. 登录后摩开发者社区

    2. 请先选择板级类别 下拉列表中选择使用的后摩板级产品。

    3. 在版本列表中选择下载的版本号,再在 AI模型类别筛选器平台架构筛选器操作系统筛选器 下拉菜单中分别选择AI模型类型、平台架构和操作系统,找到资源名为docker镜像的下载资源,选中该资源左边复选框。

    4. 点击 直接下载wget链接批量直接下载wget批量下载 按钮。

    更多Docker镜像详情,参看 Docker镜像发布列表

  5. 启动Docker镜像。

    1. 在Docker镜像存放路径下,运行下面命令导入镜像:

      docker load -i <docker_file>
      

      其中 docker_file 为下载的Docker镜像文件名。如果导入成功,则会显示导入后Docker镜像名,示例如下:

      Loaded image: harbor.houmo.ai/toolchain/release:Dadao-xh2-v0.2.0-ubuntu24.04-x86.64
      
    2. 运行下面命令启动Docker镜像:

      docker run -it --pid=host --privileged -w /hmdd -v $PWD:/hmdd --shm-size 64g --name <container_name> <docker_image_name> /bin/bash
      

      其中 container_name 需替换为自定义容器命名;docker_image_name 需替换为Docker镜像名,如上一步示例镜像名为 harbor.houmo.ai/toolchain/release:Dadao-xh2-v0.2.0-ubuntu24.04-x86.64

  6. (可选)在Docker镜像内,设置环境变量

  7. 完成上述配置后,可在Docker镜像中运行 ModelZoo模型库,也可开发新的应用程序。

    Docker镜像内各软件组件详情,可参看 Docker镜像预置软件内容

3.1.1.3. 环境变量

3.1.1.3.1. 环境变量列表

Linux环境下,可设置的环境变量如下表所示。默认情况下,无需用户设置。

注意

下表中环境变量必须通过CRL(C/C++ Runtime Library)机制进行设置。例如,在 Linux 环境中可使用 setenv
若通过操作系统级别的方式设置,这些配置可能无效。
表 3.1 Ubuntu 24.04环境下软件平台各组件环境变量

环境变量名称

描述

默认值

HOUMO_PATH

工具链安装路径。

/usr/local/houmo

TCIM_RUNTIME_PATH

TCIM运行时库安装路径。

/opt/venv/houmo/lib/python3.12/site-packages/
tcim_lite

HOUMO_SDK_PATH

系统软件安装路径。

/usr/local/houmo-sdk

LD_LIBRARY_PATH

系统软件和TCIM动态链接库所在路径。

/usr/local/houmo/lib:
/usr/local/houmo-sdk/hal/lib:

PATH

软件平台可执行文件和系统软件工具,如SMI工具所在路径。

/usr/local/houmo-sdk/tools/hm_smi:
/usr/local/houmo-sdk/tools/gui:
/usr/local/houmo-sdk/tools/cli:
/usr/local/houmo/bin:
:/usr/local/houmo-sdk/tools:
/usr/local/houmo-sdk/scripts:
/opt/venv/houmo/bin
表 3.2 Ubuntu 22.04环境下软件平台各组件环境变量

环境变量名称

描述

默认值

HOUMO_PATH

工具链安装路径。

/usr/local/houmo

TCIM_RUNTIME_PATH

TCIM运行时库安装路径。

/opt/venv/houmo/lib/python3.10/site-packages/
tcim_lite

HOUMO_SDK_PATH

系统软件安装路径。

/usr/local/houmo-sdk

LD_LIBRARY_PATH

系统软件和TCIM动态链接库所在路径。

/usr/local/houmo/lib:
/usr/local/houmo-sdk/hal/lib:

PATH

软件平台可执行文件和系统软件工具,如SMI工具所在路径。

/usr/local/houmo-sdk/tools:
/usr/local/houmo/bin:
/usr/local/houmo-sdk/scripts:
/usr/local/houmo-sdk/tools/hm_smi:
/usr/local/houmo-sdk/toos/gui:
/usr/local/houmo-sdk/tools/cli:
表 3.3 Ubuntu 20.04环境下软件平台各组件环境变量

环境变量名称

描述

默认值

HOUMO_PATH

工具链安装路径。

/usr/local/houmo

TCIM_RUNTIME_PATH

TCIM运行时库安装路径。

/usr/local/lib/python3.9/dist-packages/
tcim_lite

HOUMO_SDK_PATH

系统软件安装路径。

/usr/local/houmo-sdk

LD_LIBRARY_PATH

系统软件和TCIM动态链接库所在路径。

/usr/local/houmo/lib:
/usr/local/houmo-sdk/hal/lib:

PATH

软件平台可执行文件和系统软件工具,如SMI工具所在路径。

/usr/local/houmo-sdk/tools/hm_smi:
/usr/local/houmo-sdk/toos/gui:
/usr/local/houmo-sdk/tools/cli:
/usr/local/houmo/bin:
/usr/local/houmo-sdk/tools:
/usr/local/houmo-sdk/scripts

3.1.1.3.2. 配置运行平台模式

在Linux环境下,可通过 HDPL_PLATFORM 环境变量指定运行时平台。此环境变量允许用户选择在后摩硬件设备或后摩提供的 ISIM 模拟器上执行运行时相关的功能,如模型推理、图像预处理等。默认情况下,Docker镜像运行在后摩硬件设备上。

注意

运行在ISIM模拟器的计算结果、精度、性能等仅供参考,可能不准确。

设置运行在后摩硬件设备上:

export HDPL_PLATFORM=ASIC

设置运行在模拟器上:

export HDPL_PLATFORM=ISIM

3.1.1.4. Docker镜像预置软件内容

Docker镜像内已预置如下软件内容:

表 3.4 Ubuntu 24.04环境下Docker镜像预置内容

软件内容

存放路径

系统软件动态库

/usr/local/houmo-sdk/hal/lib/libxh2a_hal.so

软件平台

(各组件头文件和动态库依赖等)

/usr/local/houmo

HMQuantool量化工具

/opt/venv/houmo/lib/python3.12/site-packages/xhquant

TCIM

/opt/venv/houmo/lib/python3.12/site-packages/tcim

表 3.5 Ubuntu 22.04环境下Docker镜像预置内容

软件内容

存放路径

系统软件动态库

/usr/local/houmo-sdk/hal/lib/libxh2a_hal.so

软件平台

(各组件头文件和动态库依赖等)

/opt/venv/houmo/lib/python3.10/site-packages/tcim_lite/

include/tcim

TCIM

/opt/venv/houmo/lib/python3.10/site-packages/tcim_lite

表 3.6 Ubuntu 20.04环境下Docker镜像预置内容

软件内容

存放路径

系统软件动态库

/usr/local/houmo-sdk/hal/lib/libxh2a_hal.so

软件平台

(各组件头文件和动态库依赖等)

/usr/local/lib/python3.9/dist-packages/tcim_lite/

include/tcim

TCIM

/usr/local/lib/python3.9/dist-packages/tcim_lite

3.1.2. 运行时开发工具包安装与部署

用户可在运行时开发工具包中推理模型,但不支持量化和编译模型。

3.1.2.1. 使用依赖

使用依赖如下:

  • 系统环境:

    • Ubuntu 20.04(x86_64或AArch64)

    • Ubuntu 22.04(x86_64)

    • Ubuntu 24.04(x86_64)

    • Kylin V11(AArch64)

    • Kylin V10 SP3(x86_64)

    • openEuler 22.03 LTS 和 openEuler 24.03 LTS(x86_64)

    • openEuler 25.03 LTS(AArch64)

  • Python 3.9(仅用于使用Python接口安装工具包)

  • CMake 3.16.3

  • GCC 13

3.1.2.2. 环境准备

执行下面步骤完成环境准备:

  1. 在后摩设备端,烧写和升级固件镜像。详情参看《后摩大道® M50 HmUpdateTool 工具使用指南》。

  2. 在Linux系统主机端安装最新版本驱动。详情参看《后摩大道® M50 软件平台驱动安装指南》。

  3. 下载运行时开发工具包:

    1. 登录后摩开发者社区

    2. 请先选择板级类别 下拉列表中选择使用的后摩板级产品。

    3. 在版本列表中选择下载的版本号,再在 AI模型类别筛选器平台架构筛选器操作系统筛选器 下拉菜单中分别选择AI模型类型、平台架构和操作系统,找到资源名为Runtime SDK的下载资源,选中该资源左边复选框。

    4. 点击 直接下载wget链接批量直接下载wget批量下载 按钮。

  4. 检查并安装 使用依赖

  5. 安装运行时开发工具包:

    • 通过Python安装,需安装Python 3.9或更高版本,并执行下面指令安装运行时开发工具:

      pip3 install houmo_tcim_runtime_<target_hw>_${distro}_$arch-<release>.tar.gz
      
    • 如直接解压方式安装,执行下面指令解压运行时开发工具并配置环境变量:

      tar -xzf houmo_tcim_runtime_<target_hw>_${distro}_$arch-<release>.tar.gz
      cd houmo_tcim_runtime_<target_hw>_${distro}_$arch-<release>
      
  6. 设置环境变量,示例如下:

    export HOUMO_SDK_PATH=/usr/local/houmo-sdk
    export TCIM_BACKEND=Xh2HalBackend
    export HOUMO_TARGET=xh2
    export LD_LIBRARY_PATH=/home/<release>/houmo_tcim_runtime_xh2_linux_$arch-<release>/lib:$LD_LIBRARY_PATH
    export TCIM_RUNTIME_PATH=/home/<release>/houmo_tcim_runtime_xh2_linux_$arch-<release>
    export HDPL_PLATFORM=ASIC
    export HOUMO_EXAMPLES_PATH=/usr/local/src/user/houmo-examples-xh2
    export HOUMO_DATASETS_PATH=/usr/local/src/user/houmo-examples-xh2/data/datasets
    

    其中:

    • HOUMO_SDK_PATH: 后摩软件平台驱动安装路径,默认为 /usr/local/houmo-sdk

    • TCIM_BACKEND: 模型推理使用的后摩计算平台,需设置为 Xh2HalBackend

    • HOUMO_TARGET: 模型编译和推理使用的后摩设备,需设置为 xh2

    • TCIM_RUNTIME_PATH: TCIM 运行时库安装路径。

      • 如果通过 Python 安装运行时开发工具,TCIM 运行时库安装路径为:

        /path/to/python/site-packages/tcim_lite

      • 如果直接解压方式安装运行时开发工具,TCIM 运行时库安装路径为:

        /path/to/houmo_tcim_runtime_xh2_linux_$arch-<release>/lib

    • LD_LIBRARY_PATH: 系统软件和TCIM 动态链接库所在路径。

      系统软件动态链接库所在路径默认为 /usr/local/houmo/lib/usr/local/houmo-sdk/hal/lib

    • HDPL_PLATFORM: 指定运行时平台。选择在后摩硬件设备或后摩提供的 ISIM 模拟器上运行。

      • ASIC:运行在后摩硬件设备上。

      • ISIM:运行在模拟器上。

    • HOUMO_EXAMPLES_PATH: (可选)ModelZoo 模型示例所在目录,默认为 /path/to/houmo-examples-xh2

    • HOUMO_DATASETS_PATH: (可选)ModelZoo 模型示例数据库所在目录,默认为 /path/to/houmo-examples-xh2/data/datasets

详情参看《后摩大道® M50 TCIM用户手册》。