昇腾社区首页
中文
注册

算子功能测试(msOpST)

msOpST工具用于算子开发完成后,对算子功能进行初步测试,该工具可以更加高效地进行算子性能的分析和优化,提高算子的执行效率,降低开发成本。

本样例基于AscendCL接口的流程,生成单算子的OM文件,并执行该文件以验证算子执行结果的正确性。

  1. 生成ST测试用例。
    1. 在创建算子工程中的步骤2执行完成后,再执行以下命令,并根据msOpGen算子工程目录替换命令路径。
      msopst create -i "$HOME/AddCustom/op_host/add_custom.cpp" -out ./st
    2. 生成ST测试用例。
      1
      2
      3
      4
      5
      2024-09-10 19:47:15 (3995495) - [INFO] Start to parse AscendC operator prototype definition in $HOME/AddCustom/op_host/add_custom.cpp.
      2024-09-10 19:47:15 (3995495) - [INFO] Start to check valid for op info.
      2024-09-10 19:47:15 (3995495) - [INFO] Finish to check valid for op info.
      2024-09-10 19:47:15 (3995495) - [INFO] Generate test case file $HOME/AddCustom/st/AddCustom_case_20240910194715.json successfully.
      2024-09-10 19:47:15 (3995495) - [INFO] Process finished!
      
    3. 在./st目录下生成ST测试用例。
  2. 执行ST测试。
    1. 根据CANN包路径设置环境变量。
      export DDK_PATH=${INSTALL_DIR}
      export NPU_HOST_LIB=${INSTALL_DIR}/{arch-os}/devlib
    2. 执行ST测试,并将输出结果到指定路径。
      msopst run -i ./st/AddCustom_case_{TIMESTAMP}.json -soc Ascendxxxyy -out ./st/out   # xxxyy为用户实际使用的具体芯片类型
  3. 测试成功后,将测试结果输出在./st/out/{TIMESTAMP}/路径下的st.report.json文件,具体请参见表3