已关闭
[Requirement|需求建议]: 完善SIMT样例仿真编译运行说明 #1644
ruoshuisixue创建于  13 天前关闭于  6 天前
ruoshuisixue成员
13 天前 创建

Thanks for sending an requirement! Please fill in the following template to help quickly solve your problem.

Background(背景信息)

当前 SIMT 及 SIMD-SIMT Hybrid 样例的 README 主要介绍默认 NPU 模式下的编译运行流程,缺少 NPU 仿真模式的开启方式、完整命令示例、运行模式参数说明以及切换模式时的 CMake 缓存处理要求。用户在没有真实 NPU 设备或需要进行仿真调试时,难以根据文档完成样例编译和运行。

本需求统一完善相关样例的中英文文档,共涉及 57 个文件,补充 CMAKE_ASC_RUN_MODE=sim 的配置说明。同时删除 simd_simt_gather_and_adds 样例中重复的仿真编译和链接配置,避免样例级配置与通用 ASC
CMake 模块不一致。

Origin(信息来源)

Benefit / Necessity (价值/作用)

完善仿真编译运行说明后,用户可以按照统一流程在 CAmodel/NPU 仿真环境中编译、运行和验证 SIMT 样例,降低对真实 NPU 硬件的依赖,便于功能调试、问题定位、示例学习和自动化验证。

统一中英文 README 的运行模式说明和命令格式,可以减少用户因参数遗漏、运行模式不明确或 CMake 缓存未清理导致的编译问题。同时复用通用 CMake 模块管理仿真库和链接参数,减少重复配置,降低后续维 护成本。

Design(设计方案)

  1. 对 SIMT 和 SIMD-SIMT Hybrid 样例的中英文 README 进行统一补充:

    • 说明默认运行模式为 npu;
    • 增加 CMAKE_ASC_RUN_MODE=sim 的仿真编译命令;
    • 在编译选项表中增加 CMAKE_ASC_RUN_MODE,支持 npu 和 sim;
    • 对包含 SCENARIO_NUM 等额外参数的样例,在命令中保留对应参数;
    • 增加提示:切换编译模式前,需要删除 build 目录下的 CMakeCache.txt 并重新执行 CMake。
  2. 统一仿真运行流程,示例如下:

cmake -DCMAKE_ASC_RUN_MODE=sim
-DCMAKE_ASC_ARCHITECTURES=dav-3510 ..
make -j
./demo

  1. CMake 配置沿用通用 ASC 模块的运行模式处理逻辑:

mode = CMAKE_ASC_RUN_MODE,默认值为 npu

if mode == sim:
校验 CMAKE_ASC_ARCHITECTURES
根据架构映射仿真器目录
自动添加 runtime_camodel、npu_drv_camodel
自动配置仿真库搜索路径和运行时 rpath

执行通用的 ASC 编译和链接流程

  1. 删除 simd_simt_gather_and_adds/CMakeLists.txt 中重复的仿真编译选项、库目录和链接库配置,避免局部配置覆盖或偏离公共 CMake 模块的统一行为。
likedislike
Rruoshuisixue成员
13 天前 添加了label:requirement
Rruoshuisixue成员
13 天前 将 ruoshuisixue 设为负责人
ruoshuisixue成员
13 天前 评论:

/assign to @ruoshuisixue

likedislike
ruoshuisixue成员
13 天前 评论:

需求开发中,预计915闭环

likedislike
Rruoshuisixue成员
6 天前 issue状态由 待办的 改变为 已解决
Rruoshuisixue成员
6 天前 关闭了 issue
CANN-robotCANN-robot成员
6 天前 添加了label:resolved