工具链开发环境部署

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

Docker镜像安装与部署

使用依赖

Docker镜像依赖如下:

  • 系统环境:

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

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

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

  • Docker:20.10.17+

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

操作步骤

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

../_images/docker.png

图 6 Linux主机端部署说明

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

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

  2. 烧写和升级后摩设备固件镜像。详情参看《后摩大道® 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镜像预置软件内容

环境变量

环境变量列表

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

注意

下表中环境变量必须通过CRL(C/C++ Runtime Library)机制进行设置。例如,在 Linux 环境中可使用 setenv
若通过操作系统级别的方式设置,这些配置可能无效。
表 4 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
表 5 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:
表 6 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

配置运行平台模式

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

注意

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

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

export HDPL_PLATFORM=ASIC

设置运行在模拟器上:

export HDPL_PLATFORM=ISIM

Docker镜像预置软件内容

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

表 7 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

表 8 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

表 9 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