| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
fix: exit gracefully when build workdir is missing Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !961 merge master_ana_script into master fix: exit gracefully when build workdir is missing Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 scripts/ci/analyze_ops_time.py 在脚本主体直接遍历 workdir(即 build/binary),未对 workdir 本身是否存在做检查。 当 CI 按算子筛选运行时,目标 SoC 的 build/binary/<soc>/bin/build_logs 目录未被创建,脚本立即抛出 FileNotFoundError 并以非 0 退出码失败,污染 CI 流水线。 ### 修复 在脚本主体遍历前增加前置检查: python if not os.path.exists(workdir): logging.info(f"Workdir not exist: {workdir}") exit(0) - workdir 缺失视为"无活干、跳过",正常退出(exit 0),不阻断流水线 - 不改动其他逻辑,最小侵入 ### 影响范围 - scripts/ci/analyze_ops_time.py(+4/-0) ## 关联的Issue #509 ## 测试 1. **回归测试(正常场景)**:准备完整的 build/binary/<soc>/bin/build_logs/,运行脚本,验证仍能正常解析日志并生成 build/ops_cost_<soc>.csv 2. **崩溃场景验证(新增场景)**:移除或重命名 build/binary 目录后运行脚本,验证脚本输出 Workdir not exist: ... 日志并 exit 0,不抛异常 3. **CI 场景验证**:在按算子筛选运行的 CI 流水线中执行该脚本,验证未构建的 SoC 对应步骤通过、不阻断流水线 ## 文档更新 无。 ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [x] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!961 | 4 个月前 | |
流水线脚本增加镜像更新执行全量算子UT,example和跑指定算子列表功能 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !410 merge master into master 流水线脚本增加镜像更新执行全量算子UT,example和跑指定算子列表功能 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 流水线脚本增加镜像更新执行全量算子UT,example和跑指定算子列表功能 ## 关联的Issue https://gitcode.com/cann/ops-cv/issues/135 ## 测试 常规测试: kirinx90 : FAILED (build error) ascend950 : OK (141 .o) ascend910 : SKIPPED (.o) ascend310b : OK (3 .o) ascend310p : OK (19 .o) ascend910b : OK (72 .o) STATIC_BUILD : OK (cann-910b-ops-cv_9.0.0_linux-x86_64.run, cann-910b-ops-cv-static_9.0.0_linux-x86_64.tar.gz) mc62cm12a : OK (cann-mc62cm12a-ops-cv_9.0.0_linux-x86_64.run) ascend910b_install_check : OK (install/uninstall clean) ## 文档更新 不涉及文档更新 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [x] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!410 | 7 个月前 | |
feat(ci): 上库时检测PR涉及算子的examples与ut是否存在 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !2032 merge sync/check-examples-ut into master feat(ci): 上库时检测PR涉及算子的examples与ut是否存在 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 上库时检测 PR 涉及算子的交付件完整性(examples 与 ut): - 新增 scripts/ci/check_examples_ut.py:检测 PR 直接涉及算子的 examples/ut 缺失或为空 - 新增 scripts/util/changed_ops.py:filelist 解析与算子目录遍历公共库 - compile.sh / workflows 接入 Check_Example 任务:缺失时门禁失败并提示算子清单,产出 CSV 报告并上传 OBS 判定口径:无 def 文件的接口类算子不统计;examples 目录无 .cpp/.cc/.py 源码视为缺失;tests/ut 无源码文件视为缺失(README/测试数据不算);纯 .md 或 tests/ 变更的 PR 走原有跳过逻辑。不影响仓内已有脚本与任务(纯增量改动,+677 行 0 删除)。 ## 测试 - 全仓扫描:96 算子,检出 4 缺 examples / 4 缺 ut(人工核实属实) - pr_filelist 模式:缺失算子 exit 1 + check_example_failed 输出;正常算子 exit 0 - compile.sh Check_Example 分支本地干跑通过(CSV 拷贝/ATOMGIT_OUTPUT 输出/断言失败路径) - pre-commit 全钩子通过(ruff / codespell / yaml / OAT 合规) ## 类型标签 - [x] 新特性 See merge request: cann/ops-cv!2032 | 2 天前 | |
流水线脚本增加镜像更新执行全量算子UT,example和跑指定算子列表功能 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !410 merge master into master 流水线脚本增加镜像更新执行全量算子UT,example和跑指定算子列表功能 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 流水线脚本增加镜像更新执行全量算子UT,example和跑指定算子列表功能 ## 关联的Issue https://gitcode.com/cann/ops-cv/issues/135 ## 测试 常规测试: kirinx90 : FAILED (build error) ascend950 : OK (141 .o) ascend910 : SKIPPED (.o) ascend310b : OK (3 .o) ascend310p : OK (19 .o) ascend910b : OK (72 .o) STATIC_BUILD : OK (cann-910b-ops-cv_9.0.0_linux-x86_64.run, cann-910b-ops-cv-static_9.0.0_linux-x86_64.tar.gz) mc62cm12a : OK (cann-mc62cm12a-ops-cv_9.0.0_linux-x86_64.run) ascend910b_install_check : OK (install/uninstall clean) ## 文档更新 不涉及文档更新 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [x] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!410 | 7 个月前 | |
流水线脚本增加镜像更新执行全量算子UT,example和跑指定算子列表功能 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !410 merge master into master 流水线脚本增加镜像更新执行全量算子UT,example和跑指定算子列表功能 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 流水线脚本增加镜像更新执行全量算子UT,example和跑指定算子列表功能 ## 关联的Issue https://gitcode.com/cann/ops-cv/issues/135 ## 测试 常规测试: kirinx90 : FAILED (build error) ascend950 : OK (141 .o) ascend910 : SKIPPED (.o) ascend310b : OK (3 .o) ascend310p : OK (19 .o) ascend910b : OK (72 .o) STATIC_BUILD : OK (cann-910b-ops-cv_9.0.0_linux-x86_64.run, cann-910b-ops-cv-static_9.0.0_linux-x86_64.tar.gz) mc62cm12a : OK (cann-mc62cm12a-ops-cv_9.0.0_linux-x86_64.run) ascend910b_install_check : OK (install/uninstall clean) ## 文档更新 不涉及文档更新 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [x] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!410 | 7 个月前 | |
【CI Feature】CI流水线支持识别Ascend950编译及UT Co-authored-by: Hou_jialin<houjialin3@huawei.com> # message auto-generated for no-merge-commit merge: !317 merge br_compile_950 into master 【CI Feature】CI流水线支持识别Ascend950编译及UT Created-by: Hou_jialin Commit-by: Hou_jialin Merged-by: cann-robot Description: ## 描述 - CI流水线支持Ascend950编译任务,新增流水线任务**Compile_Ascend_X86_A5**和**Compile_Ascend_ARM_A5** <img src="https://raw.gitcode.com/user-images/assets/7657293/09968433-7454-4ffc-9987-761a44aceaed/ci_a5.png" width="40%" /> - 新增脚本compile_a5_pkg.sh用于CI调用来执行编译命令,编译对应 arch35目录下的算子实现。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #123--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> NA ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> CI线上新增编译任务测试: <img src="https://raw.gitcode.com/user-images/assets/7657293/dde7a10e-e8c6-49b7-a008-ce2dd2a72919/ci_task2.png " width="40%" /> 本地编译校验: <img src="https://raw.gitcode.com/user-images/assets/7657293/feeecb36-31a0-4efe-bf84-c156e66cc55f/image.png" width="40%"/> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 不涉及文档更新 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-cv!317 | 8 个月前 | |
增加算子编译统计算子分组功能,优化编译耗时 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !368 merge master into master 增加算子编译统计算子分组功能,优化编译耗时 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 support some CI engineering capabilities. 优化仓库CI构建能力:增加算子编译统计算子分组功能,优化编译耗时。 - check_example.sh: 根据 PR 修改的文件列表,自动找出受影响的算子(ops),并逐个安装对应 run 包,然后执行它们的 example 用例做验证。 - check_pkg.sh: 根据 PR 修改的文件,精准找出受影响的算子,单独构建对应的 run 包,并打包成 single.tar.gz 供后续 CI 阶段使用。 - gen_ops_soc.py: 扫描仓库中所有算子 def.cpp 文件,分析哪些算子支持指定 SOC(如 ascend910b / ascend950 等),然后按分组规则把这些算子分组输出。 - op_compile_time_grouping.sh: 析编译日志,统计每个算子的最大编译耗时,然后按照“总耗时均衡原则”把算子分成 5 组,并生成分组 CSV 和 YAML 文件。 - ops_run_repackage.sh: 把多个 custom kernel 的 .run 包解包 → 合并进一个 host 包 → 重新用 makeself 生成一个“最终整合后的算子安装包”。 ## 关联的Issue https://gitcode.com/cann/ops-cv/issues/113 ## 测试 常规测试: ascend950 : OK (129 .o) ascend910 : SKIPPED (.o) ascend310b : OK (3 .o) ascend310p : OK (25 .o) ascend910b : OK (81 .o) STATIC_BUILD : OK (cann-910b-ops-cv_9.0.0_linux-x86_64.run, cann-910b-ops-cv-static_9.0.0_linux-x86_64.tar.gz) mc62cm12a : OK (cann-mc62cm12a-ops-cv_9.0.0_linux-x86_64.run) ascend910b_install_check : OK (install/uninstall clean) ==================================== [ALL DONE] ## 文档更新 不涉及文档更新 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-cv!368 | 7 个月前 | |
support local compilation CI build. Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !537 merge master into master support local compilation CI build. Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 支持本地执行CI命令 ## 关联的Issue https://gitcode.com/cann/ops-cv/issues/206 ## 测试 本地修改算子文件后可以按照命令成功构建不报错。 常规测试: kirinx90 : FAILED (build error) ascend950 : OK (112 .o) ascend910 : SKIPPED (.o) ascend310b : OK (3 .o) ascend310p : OK (19 .o) ascend910b : OK (72 .o) STATIC_BUILD : OK (cann-910b-ops-cv_9.0.0_linux-x86_64.run, cann-910b-ops-cv-static_9.0.0_linux-x86_64.tar.gz) mc62cm12a : OK (cann-mc62cm12a-ops-cv_9.0.0_linux-x86_64.run) ascend910b_install_check : OK (install/uninstall clean) ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!537 | 6 个月前 | |
适配ops-cv静态包构建 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !1174 merge adapt-static-build-pr7677 into master 适配ops-cv静态包构建 Created-by: jialimin1 Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 适配 ops-cv 静态包(static library package)构建流程,增强 target 存在性检查和多包合并能力。 ### 变更文件 | 文件 | 变更 | 说明 | |------|------|------| | build.sh | +7 -5 | 静态库构建前检查 target 是否存在;static_library_files 目录缺失时优雅跳过 | | cmake/static.cmake | +33 -31 | OPSTATIC_NAME target 创建跟随 OPHOST_NAME_static / OPAPI_NAME_static 存在性 | | scripts/ci/merge_static_packages.sh | +204 | 新增:解压多个 cann-ops-cv-static tar.gz 包并合并静态库 | ### 关键改动 1. **build.sh**:opapi_cv_static 和 cann_cv_static cmake target 在仅有 AICPU 算子时不存在,原代码无条件构建会报错。改为先 grep -wq 检查 target 存在再构建。 2. **build.sh**:package_static() 中 static_library_files 目录不存在时改为 return 0(非错误退出),适配无需打包静态库的场景。 3. **static.cmake**:原 add_custom_target(${OPSTATIC_NAME}) 无条件创建,导致空 target 构建失败。改为仅在关联的 host/api 静态库 target 存在时才创建。 4. **merge_static_packages.sh**:支持指定 SoC 版本,解压多个 tar.gz 包,合并 include 和 lib64 目录,处理同名 .o 文件冲突。 ## 关联的Issue [#676](https://gitcode.com/cann/ops-cv/issues/676) ## 测试 静态库相关编译安装打包测试 ## 文档更新 ## 类型标签 - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [x] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1174 | 2 个月前 | |
流水线脚本增加镜像更新执行全量算子UT,example和跑指定算子列表功能 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !410 merge master into master 流水线脚本增加镜像更新执行全量算子UT,example和跑指定算子列表功能 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 流水线脚本增加镜像更新执行全量算子UT,example和跑指定算子列表功能 ## 关联的Issue https://gitcode.com/cann/ops-cv/issues/135 ## 测试 常规测试: kirinx90 : FAILED (build error) ascend950 : OK (141 .o) ascend910 : SKIPPED (.o) ascend310b : OK (3 .o) ascend310p : OK (19 .o) ascend910b : OK (72 .o) STATIC_BUILD : OK (cann-910b-ops-cv_9.0.0_linux-x86_64.run, cann-910b-ops-cv-static_9.0.0_linux-x86_64.tar.gz) mc62cm12a : OK (cann-mc62cm12a-ops-cv_9.0.0_linux-x86_64.run) ascend910b_install_check : OK (install/uninstall clean) ## 文档更新 不涉及文档更新 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [x] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!410 | 7 个月前 | |
增加算子编译统计算子分组功能,优化编译耗时 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !368 merge master into master 增加算子编译统计算子分组功能,优化编译耗时 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 support some CI engineering capabilities. 优化仓库CI构建能力:增加算子编译统计算子分组功能,优化编译耗时。 - check_example.sh: 根据 PR 修改的文件列表,自动找出受影响的算子(ops),并逐个安装对应 run 包,然后执行它们的 example 用例做验证。 - check_pkg.sh: 根据 PR 修改的文件,精准找出受影响的算子,单独构建对应的 run 包,并打包成 single.tar.gz 供后续 CI 阶段使用。 - gen_ops_soc.py: 扫描仓库中所有算子 def.cpp 文件,分析哪些算子支持指定 SOC(如 ascend910b / ascend950 等),然后按分组规则把这些算子分组输出。 - op_compile_time_grouping.sh: 析编译日志,统计每个算子的最大编译耗时,然后按照“总耗时均衡原则”把算子分成 5 组,并生成分组 CSV 和 YAML 文件。 - ops_run_repackage.sh: 把多个 custom kernel 的 .run 包解包 → 合并进一个 host 包 → 重新用 makeself 生成一个“最终整合后的算子安装包”。 ## 关联的Issue https://gitcode.com/cann/ops-cv/issues/113 ## 测试 常规测试: ascend950 : OK (129 .o) ascend910 : SKIPPED (.o) ascend310b : OK (3 .o) ascend310p : OK (25 .o) ascend910b : OK (81 .o) STATIC_BUILD : OK (cann-910b-ops-cv_9.0.0_linux-x86_64.run, cann-910b-ops-cv-static_9.0.0_linux-x86_64.tar.gz) mc62cm12a : OK (cann-mc62cm12a-ops-cv_9.0.0_linux-x86_64.run) ascend910b_install_check : OK (install/uninstall clean) ==================================== [ALL DONE] ## 文档更新 不涉及文档更新 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-cv!368 | 7 个月前 | |
update package script paths to cann-cmake Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !849 merge master into master update package script paths to cann-cmake Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 清理废弃的打包脚本 scripts/package/package.py,相关功能已迁移到 cann-cmake 仓库统一维护。 ## 关联的Issue 不需要关联issue。 ## 测试 编译okay。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [x] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!849 | 5 个月前 | |
rdv-support Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !931 merge dev into master rdv-support Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: ## 描述 新增 ST(System Test)测试框架支持,集成 ops-test-kit 工具,实现算子精度自动化测试和结果汇总。 主要变更: 1. **CMakeLists.txt**: 新增 DOWNLOAD_OPS_TEST_KIT 选项,通过 FetchContent 按需下载 ops-test-kit 2. **cmake/third_party/ops_test_kit.cmake**: 新增 ops-test-kit 下载逻辑,支持本地 tar.gz 包、Git SSH、Git HTTPS 三种方式 3. **scripts/ci/ops_st_test.sh**: 新增 ST 测试入口脚本,支持按算子、按 SoC 版本灵活配置测试 4. **scripts/ci/ops_test_util.py**: 新增测试结果处理工具,包含精度检查、CSV 汇总、表格化输出等功能 ## 关联的Issue #510 ## 测试 1. **编译构建测试** - 执行 cmake -DDOWNLOAD_OPS_TEST_KIT=ON 验证 ops-test-kit 下载逻辑 - 验证本地包/SSH/HTTPS 三种下载路径均正常工作 2. **ST 测试功能验证** - tests/st目录下补充arch35/*.csv,assets/golden.py - 执行 bash scripts/ci/ops_st_test.sh --soc_version=ascend950 --ops=abs 验证 ST 测试流程 - 验证精度检查结果正确输出(PASS/FAIL 状态、DynPrec/CstPrec/BinPrec 精度值) - 验证汇总表格格式正确显示 3. **兼容性验证** - 验证 DOWNLOAD_OPS_TEST_KIT=OFF 时不影响原有构建流程 - 验证已有 ops-test-kit 目录时跳过下载 ## 文档更新 无文档更新 ## 类型标签 - [ ] 🐛 Bug 修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [x] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!931 | 4 个月前 | |
rdv-support Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !931 merge dev into master rdv-support Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: ## 描述 新增 ST(System Test)测试框架支持,集成 ops-test-kit 工具,实现算子精度自动化测试和结果汇总。 主要变更: 1. **CMakeLists.txt**: 新增 DOWNLOAD_OPS_TEST_KIT 选项,通过 FetchContent 按需下载 ops-test-kit 2. **cmake/third_party/ops_test_kit.cmake**: 新增 ops-test-kit 下载逻辑,支持本地 tar.gz 包、Git SSH、Git HTTPS 三种方式 3. **scripts/ci/ops_st_test.sh**: 新增 ST 测试入口脚本,支持按算子、按 SoC 版本灵活配置测试 4. **scripts/ci/ops_test_util.py**: 新增测试结果处理工具,包含精度检查、CSV 汇总、表格化输出等功能 ## 关联的Issue #510 ## 测试 1. **编译构建测试** - 执行 cmake -DDOWNLOAD_OPS_TEST_KIT=ON 验证 ops-test-kit 下载逻辑 - 验证本地包/SSH/HTTPS 三种下载路径均正常工作 2. **ST 测试功能验证** - tests/st目录下补充arch35/*.csv,assets/golden.py - 执行 bash scripts/ci/ops_st_test.sh --soc_version=ascend950 --ops=abs 验证 ST 测试流程 - 验证精度检查结果正确输出(PASS/FAIL 状态、DynPrec/CstPrec/BinPrec 精度值) - 验证汇总表格格式正确显示 3. **兼容性验证** - 验证 DOWNLOAD_OPS_TEST_KIT=OFF 时不影响原有构建流程 - 验证已有 ops-test-kit 目录时跳过下载 ## 文档更新 无文档更新 ## 类型标签 - [ ] 🐛 Bug 修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [x] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!931 | 4 个月前 | |
[Fix] 收窄 COMM_FILES 正则,避免 tests/ 下公共文件误触发 ALL_UT Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !1676 merge fix/comm-files-regex into master [Fix] 收窄 COMM_FILES 正则,避免 tests/ 下公共文件误触发 ALL_UT Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 问题 scripts/ci/parse_changed_files.py 中 COMM_FILES = ["tests", "common"],生成的 comm 正则 ^(tests|common) 匹配范围过宽: - tests/ut/common/tiling_case_executor.cpp 等公共测试工具文件变更 → 误匹配 → comm_changed_files 非空 → relate_ut 加入 ALL_UT - build_options.sh:964 遇到 ALL_UT 直接 return,跳过所有过滤 - 最终导致:**全部 4 类 UT(ophost/opapi/opkernel/opgraph)+ 全部算子一次性编译**,CI 超时或资源不足失败 ## 修复 将 COMM_FILES 从 ["tests", "common"] 收窄为 ["common/src"]: - common/src/ 下的公共源码变更仍正确触发 ALL_UT - tests/ 下的公共测试工具文件不再误触发 ALL_UT,只按实际匹配的算子 UT 执行 ## 验证 # 改前:tests/ut/common/tiling_case_executor.cpp + 算子测试文件 → {"ALL_UT", "OP_KERNEL_UT"} ← ALL_UT 误触发,全量编译 # 改后:同样输入 → {"OP_KERNEL_UT"} ← 只跑对应算子的 kernel UT ## 对齐 与 ops-nn 仓(parse_changed_files.py 无 ALL_UT 机制)和 ops-math 仓(gen_ci_cmd.py 按算子维度分组)的行为对齐。 ## 关联 Issue #975 ## 类型 📦 构建/CI See merge request: cann/ops-cv!1676 | 30 天前 | |
onnx插件注册迁移ParseParamsByOperatorFn并新增framework UT Co-authored-by: clinglai0517<laichangling@huawei.com> # message auto-generated for no-merge-commit merge: !1414 merge onnx-fix into master onnx插件注册迁移ParseParamsByOperatorFn并新增framework UT Created-by: clinglai0517 Commit-by: clinglai0517 Merged-by: cann-robot Description: ### 1. ONNX 插件解析器迁移 - 迁移6个onnx插件解析器: YoloBoxesEncode/AffineGrid/Iou/NMSWithMask/TransArgb/YoloxBoundingBoxDecode - 解析器签名由 const Message* op_src 改为 const ge::Operator& op_src - 属性解析由遍历 NodeProto::attribute() 改为读取 op_src.GetAttr("attribute") 的 JSON 解析 - 注册接口由 .ParseParamsFn(...) 迁移为 .ParseParamsByOperatorFn(...) ### 2. 公共工具头文件去重 - 新增 common/inc/framework/cv_plugin_util.h,收纳 GetOpName/ChangeFormatFromOnnx/StrToFloat - 文件名带 cv 前缀,避免不同 ops-* 算子仓头文件重名冲突 - 同步更新 onnx_common.h 及 4 个已迁移插件源的 include ### 3. framework UT 框架与用例 - cmake/ut.cmake 新增 framework ut 模块(${PKG_NAME}_op_framework_ut), tests/ut/op_host 接入 framework ut cases - UT 用例按算子拆分:一个算子对应一个 test_*_onnx_plugin.cpp 文件 (affine_grid / npu_iou / npu_nms_with_mask / trans_argb / yolox_bounding_box_decode / yolo_boxes_encode),共 15 个用例 ## 验证 - 容器内 cv_op_host_ut 构建+运行: 15 tests from 6 test suites, 全部 PASSED, RUN_EXIT=0 - bash build.sh --onnxplugin -j32 生产构建通过,产物 liboponnx_plugin_cv.so See merge request: cann/ops-cv!1414 | 1 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 4 个月前 | ||
| 7 个月前 | ||
| 2 天前 | ||
| 7 个月前 | ||
| 7 个月前 | ||
| 8 个月前 | ||
| 7 个月前 | ||
| 6 个月前 | ||
| 2 个月前 | ||
| 7 个月前 | ||
| 7 个月前 | ||
| 5 个月前 | ||
| 4 个月前 | ||
| 4 个月前 | ||
| 30 天前 | ||
| 1 个月前 |