已关闭
CI 配置解析重构:gen_ci_cmd.py 替代旧解析脚本 #1147
liulinxiang创建于  4月1日关闭于  4月2日
liulinxiang成员
4月1日 创建

背景

支持experimental算子910b冒烟以及对之前的ut、打包内容进行统一重构

主要改动

1. 新增 gen_ci_cmd.py

  • 替代旧的 和 (已删除)
  • 支持 UT 模式、打包模式、run_example 模式三种命令生成

2. 每个算子生成独立构建命令

  • 按算子维度检测 UT 类型(ophost/opapi/opkernel/opgraph)
  • 按算子维度检测 SOC(通过 arch35 目录判断是否支持 ascend950)
  • 多个算子合并到一条命令执行,减少 CI 任务数量

3. 支持 experimental 算子区分

  • 运行 experimental 目录下的算子
  • 运行基本算子
  • 默认算子:experimental 为 acos,非 experimental 为 is_finite

4. run_example 模式增强

  • 根据算子 examples 目录测试文件类型生成命令
  • 存在 test_aclnn*.cpp → 生成 eager 命令
  • 存在 test_geir*.cpp → 生成 graph 命令

5. 打包命令优化

  • 添加 参数
  • experimental=TRUE:
  • experimental=FALSE:

6. build.sh 调整

  • 移除旧的 parse_changed_files 函数
  • 新增 run_ci_mode 函数,直接调用 gen_ci_cmd.py

影响范围

CI 流程变更

模式 旧命令 新命令
UT 多步解析 直接执行 gen_ci_cmd.py
打包 无 vendor_name 带 --vendor_name 参数
示例 固定模式 按算子动态生成

删除的文件

  • (145 行)
  • (92 行)

新增的文件

  • (552 行)
  • (573 行,测试脚本)

测试用例

本次提交修改了多个算子文件进行测试验证:

  • math: assign_sub, ceil, equal, is_neg_inf, lerp, not_equal, rsqrt_grad
  • conversion: mem_set, reflection_pad3d_grad
  • random: drop_out_do_mask
  • experimental: floor_mod, isin_part_v1, maximum_v2, not_equal, reduce_prod_v2, reduce_sum_v2, pad_v2, triu, fill_v2

注意事项

  1. CI 环境需要更新调用方式,使用新的参数格式
  2. 需要验证新脚本在各 SOC 下的兼容性
  3. run_example 的 graph 模式暂未放开(代码中有 TODO 标注)

后续建议

likedislike
liulinxiang成员
4月1日 评论:
likedislike
Lliulinxiang成员
4月1日 修改了issue 的描述
sunchun成员
4月1日 评论:

/assign @liulinxiang

likedislike
CANN-robotCANN-robot成员
4月1日 将 liulinxiang 设为负责人
CANN-robotCANN-robot成员
4月2日 关闭了 issue
CANN-robotCANN-robot成员
4月2日 添加了label:resolved