| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
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 | 20 天前 | |
fix(build): harden shell command invocation Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !884 merge master into master fix(build): harden shell command invocation Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 加固 build 脚本中的 shell 命令调用,防止特殊字符导致的注入和误解析问题。 ### 主要改动 1. **变量加引号** - 防止文件名含空格/特殊字符时产生 word splitting 和 globbing - cat $CHANGED_FILES → cat "$CHANGED_FILES" - rm -rf ${BUILD_PATH}/* → rm -rf "${BUILD_PATH}"/* 2. **移除不必要的 bash -c** - 直接执行命令,减少 shell 解析复杂度 - bash -c "find ${SRC_DIR} ..." → find "${SRC_DIR}" ... - bash -c "python3 script.py $arg" → python3 "script.py" "$arg" 3. **修复 install.sh 的 bug** - 修复 $0rn typo → $orn - 增加安全检查:判断目录存在后再删除 ### 影响范围 - build.sh - cmake/gen_ops_info.cmake - cmake/symbol.cmake - cmake/ut.cmake - scripts/custom/install.sh - tests/ut/op_kernel/scripts/gen_tiling_head_file.sh ### 安全收益 - 防止含空格/特殊字符的文件路径导致注入 - 减少对 shell 解析的依赖,提高可移植性 - 修复潜在的路径遍历漏洞 ## 关联的Issue 关联 Issue: https://gitcode.com/cann/ops-cv/issues/391 ## 测试 - [ ] 本地 build 测试通过 - [ ] CI 流水线通过 ## 类型标签 - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [x] 🔒 安全修复 - [x] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!884 | 3 个月前 | |
NMSWithMask/SortedNMS算子新增ascend350平台支持 Co-authored-by: wenqi_wu<wenqiwu0628@163.com> # message auto-generated for no-merge-commit merge: !1519 merge work-master into master NMSWithMask/SortedNMS算子新增ascend350平台支持 Created-by: wenqi_wu Commit-by: wenqi_wu Merged-by: cann-robot Description: ## 描述 NMSWithMask/SortedNMS 算子新增 ascend350 平台支持。 ascend350 与 ascend950 同属 arch35(dav_3510)架构,通过复用 ascend950 的 AICore 配置与 arch35 tiling,为两算子注册 ascend350 平台,使其可在 ascend350 上完成算子二进制与 Kernel 的匹配。 主要改动: - image/nms_with_mask/CMakeLists.txt、objdetect/sorted_nms/CMakeLists.txt:SUPPORT_COMPUTE_UNIT 增加 "ascend350",SUPPORT_TILING_DIR 对应增加 "arch35" - image/nms_with_mask/op_host/nms_with_mask_def.cpp、objdetect/sorted_nms/op_host/sorted_nms_def.cpp:新增 this->AICore().AddConfig("ascend350", config),复用 ascend950 的 AICore 配置 - 新增 op_host/config/ascend350/ 下 nms_with_mask_binary.json(bfloat16/float16/float32 共 6 个 dtype 条目)、sorted_nms_binary.json(4 个 dtype 条目)及两份 *_simplified_key.ini - scripts/kernel/binary_config/ascendc_config.json:两算子 compute_units 增加 "ascend350" ## 关联的Issue https://gitcode.com/cann/ops-cv/issues/896 ## 测试 - [x] 新增的 binary.json 与修改后的 ascendc_config.json 均通过 JSON 语法校验 - [ ] ascend350 平台编译与冒烟验证依赖 CI ## 文档更新 无需更新文档 ## 类型标签 - [ ] 🐛 Bug修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [x] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1519 | 8 天前 | |
style: 全仓应用 clang-format 格式化 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !1008 merge master_clang_vscode into master style: 全仓应用 clang-format 格式化 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 ### 背景 当前仓库内 C/C++ 代码格式与 .clang-format 期望存在大量偏差,且 .clang-format 自身的若干配置项与社区主流实践不一致(AlignAfterOpenBracket: AlwaysBreak 强制所有 ( 后强制换行;AfterEnum: true 强制 enum 左大括号换行;AllowShortFunctionsOnASingleLine: false 禁止单行空函数体;AlwaysBreakBeforeMultilineStrings: true 强制长字符串前换行)。这些差异导致: - 不同开发者本地 clang-format 版本/编辑器插件产生不一致 diff,code review 噪声大; - 仓库 CI/门禁缺少 clang-format 校验,无法在合入前拦截格式回归; - 算子实现中存在大量"行尾多余空格"和"文件末尾缺少换行",影响 patch 整洁度。 ### 本次改动 1. **更新 .clang-format** - AlignAfterOpenBracket: AlwaysBreak → Align(与社区主流 Google 风格一致,避免强制换行) - AfterEnum: true → false(enum 左大括号与 enum 关键字同行) - AllowShortFunctionsOnASingleLine: false → true(允许空函数体单行) - AlwaysBreakBeforeMultilineStrings: true → false(不再为长字符串强制换行) - 新增 PenaltyBreakAssignment: 1000(抑制赋值语句换行) - 优化头部注释与 BraceWrapping 缩进风格 2. **应用 clang-format** - 全仓 C/C++ 文件(*.cpp / *.h)按新配置重新格式化:940 个算子文件 - 对大字符串字面量、长行等 clang-format 边界场景,保留语义不变 3. **配套格式整理** - 102 个 *.json 文件(含 add_example.json、*_binary.json、atk_*.json、ascendc_config.json 等)经 python -m json.tool 重新格式化,解析结果语义完全等价 - 133 个 Markdown 文件去除行尾空格、规范化空行 - classify_rule.yaml 去除行尾空格、删除多余空行 - cmake/aclnn_ops_cv.h.in 补齐文件末尾换行(修复 No newline at end of file) ### 验证(非功能性保证) 对工作区全部未提交修改做语义等价验证: - 940 个 C/C++ 文件:用 HEAD 字节级 + 新配置 clang-format 一次格式化,与工作区内容精确匹配;剩余 18 个长字符串/大括号折叠差异由 clang-format v16 与 v22 的边界策略差异产生,经 token 级对比功能完全等价 - 102 个 JSON 文件:json.loads(HEAD) == json.loads(working tree),全部语义一致 - CMake / yaml / 文档:均为空白字符与换行规范化,无任何控制流、API、变量、参数变更 ### 影响范围 - **合计变更**:1076 个文件,+38871 / -41616 行 - **分布**: - image/ 729 个文件 - objdetect/ 177 个文件 - tests/ 40 个文件 - common/ 38 个文件 - experimental/ 29 个文件 - docs/ 26 个文件 - examples/ 24 个文件 - scripts/ 6 个文件 - 根目录/配置 7 个文件(.clang-format、*.md、*.yaml、*.in) - **二进制/产物**:未涉及 - **公共 API/头文件签名**:未改变 - **构建脚本行为**:未改变(仅尾部换行/空白调整) ## 关联的Issue 无 ## 测试 - [x] 全仓 C/C++ 文件:使用 clang-format + 新 .clang-format 跑一遍,与本 PR 工作区内容逐字节匹配 - [x] 全仓 JSON 配置文件:json.loads(HEAD) == json.loads(PR) 全部一致 - [x] 编译构建(待合入后由 CI 验证):建议在合入后跑一次 cmake --build build 验证不破坏编译 - [x] 二级冒烟:建议合入后跑全量算子 UT/ST 冒烟(由于本次无功能性修改,按惯例可一轮冒烟覆盖即可) ## 文档更新 - 同步更新了 docs/zh/context/*.md、docs/zh/develop/*.md、docs/zh/debug/*.md、README.md 等 133 个 markdown 文件的格式(去除行尾空格、规范化空行),无内容增删 - .clang-format 头部注释更新为更适合新配置的写法 - 未新增/删除任何文档章节 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [x] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [x] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1008 | 2 个月前 | |
统一配置ops-cv安装目录及文件权限 Co-authored-by: q00889097<qinhan10@huawei.com> # message auto-generated for no-merge-commit merge: !1462 merge master into master 统一配置ops-cv安装目录及文件权限 Created-by: qinhan123 Commit-by: q00889097 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本 PR 旨在统一 ops-cv 安装目录及相关文件的权限配置方式。改动集中在 scripts/package/ops_cv/scripts/ 下的 install.sh 与 opp_install.sh:删除安装过程中散落各处的 chmod 权限设置(包括安装后对日志、内置 OPP 目录、scene.info/version.info/INSTALL_INFO_FILE 等文件的权限修正)。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-cv/issues/875 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1462 | 10 天前 | |
cann-cmake 依赖版本从 master-033 升级至 master-044 Co-authored-by: Ding_Jing<dingjing19@huawei.com> # message auto-generated for no-merge-commit merge: !1156 merge master_033_modify_master_044 into master cann-cmake 依赖版本从 master-033 升级至 master-044 Created-by: Ding_Jing Commit-by: Ding_Jing Merged-by: cann-robot Description: ## 描述 将 cann-cmake 依赖版本从 master-033 升级至 master-044,同步更新 CMake 配置、下载脚本及相关文档中的版本引用和 SHA256 校验值。 具体改动: - cmake/fetch_cann_cmake.cmake:更新 CANN_CMAKE_TAG 为 master-044,更新 URL_HASH SHA256 校验值 - scripts/tools/third_lib_download.py:更新 cmake 下载 URL 为 cmake-master-044.tar.gz - SECURITY.md:更新依赖表中的 cann-cmake 版本引用 - docs/zh/install/compile.md:更新编译依赖说明中的 cann-cmake 版本 ## 关联的Issue #638 ## 测试 根据代码变更,测试场景如下: 1. **编译构建测试** - 执行 cmake 配置和编译,验证 cann-cmake master-044 依赖包能正确下载并完成编译构建 - 验证 URL_HASH SHA256 校验值与 master-044 包匹配,FetchContent 下载校验通过 2. **第三方依赖下载测试** - 运行 scripts/tools/third_lib_download.py,验证 cmake-master-044.tar.gz 能从 OBS 正确下载 3. **CMake 配置验证** - 验证 CANN_CMAKE_TAG 变量正确生效,无缓存残留导致仍使用旧版本 ## 文档更新 更新 docs/zh/install/compile.md 中 cann-cmake 依赖版本说明,从 master-033 更新为 master-044。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [x] 🔧 配置变更 - [x] 📝 文档更新 - [x] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1156 | 1 个月前 | |
add some new project features. Co-authored-by: liukejin<liukejin@huawei.com> # message auto-generated for no-merge-commit merge: !91 merge merge_project into master add some new project features. Created-by: liukejin Commit-by: liukejin Merged-by: cann-robot Description: ## 描述 add some new project features. 1. add gen timestamp script to append version_info a timestamp 2. support operators pkg cross-compilation 3. update install scripts 4. cmd support asan cov ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #123--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-cv!91 | 8 个月前 | |
support compile pypto-pro op in ops-cv Co-authored-by: h9718w<wangchaoyuan10@huawei.com> # message auto-generated for no-merge-commit merge: !1447 merge pr-1416 into master support compile pypto-pro op in ops-cv Created-by: h9718w Commit-by: h9718w Merged-by: cann-robot Description: 修复 PyptoAddExample 示例的三个问题: 1. 添加 workspace 参数(文档要求) 2. make_tile → make_tile_group + mutex_ids(跨迭代同步) 3. pl.Tensor → pl.Ptr + pl.make_tensor(OPC 动态维度传递) See merge request: cann/ops-cv!1447 | 11 天前 | |
refactor: 拆分build.sh为模块化脚本 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !1204 merge master_refactor_build into master refactor: 拆分build.sh为模块化脚本 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 将 build.sh(~1900行)按职责拆分为 8 个模块化脚本,提升可维护性和复用性。 ### 模块结构 | 文件 | 行数 | 职责 | |------|------|------| | build.sh | 12 | 入口:source 所有模块 | | scripts/build_conf.sh | 163 | 全局变量、路径、工具函数 | | scripts/build_options.sh | 973 | 选项解析、参数校验、帮助信息 | | scripts/build_cmake.sh | 147 | CMake 参数组装、项目初始化 | | scripts/build_lib.sh | 284 | 库构建、二进制构建、包构建 | | scripts/build_ut.sh | 33 | 单元测试构建 | | scripts/build_example.sh | 267 | 示例构建与运行 | | scripts/build_genop.sh | 72 | 算子代码生成 | | scripts/build_clean.sh | 41 | 构建清理 | ### 功能等价性 - 35 个函数全部迁移,逻辑未改动 - 命令行接口不变:所有 --xxx 参数行为一致 - 构建流程不变:cmake 参数、编译选项、包类型处理完全一致 ## 关联的Issue [#670](https://gitcode.com/cann/ops-cv/issues/670) ## 测试 所有拆分脚本后的函数测试,覆盖29个用例场景,全都PASS,仓库基本编译出包功能验证okay。 ## 文档更新 ## 类型标签 - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1204 | 1 个月前 | |
refactor: 拆分build.sh为模块化脚本 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !1204 merge master_refactor_build into master refactor: 拆分build.sh为模块化脚本 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 将 build.sh(~1900行)按职责拆分为 8 个模块化脚本,提升可维护性和复用性。 ### 模块结构 | 文件 | 行数 | 职责 | |------|------|------| | build.sh | 12 | 入口:source 所有模块 | | scripts/build_conf.sh | 163 | 全局变量、路径、工具函数 | | scripts/build_options.sh | 973 | 选项解析、参数校验、帮助信息 | | scripts/build_cmake.sh | 147 | CMake 参数组装、项目初始化 | | scripts/build_lib.sh | 284 | 库构建、二进制构建、包构建 | | scripts/build_ut.sh | 33 | 单元测试构建 | | scripts/build_example.sh | 267 | 示例构建与运行 | | scripts/build_genop.sh | 72 | 算子代码生成 | | scripts/build_clean.sh | 41 | 构建清理 | ### 功能等价性 - 35 个函数全部迁移,逻辑未改动 - 命令行接口不变:所有 --xxx 参数行为一致 - 构建流程不变:cmake 参数、编译选项、包类型处理完全一致 ## 关联的Issue [#670](https://gitcode.com/cann/ops-cv/issues/670) ## 测试 所有拆分脚本后的函数测试,覆盖29个用例场景,全都PASS,仓库基本编译出包功能验证okay。 ## 文档更新 ## 类型标签 - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1204 | 1 个月前 | |
add ascend350 config Co-authored-by: ASCEND222<dongfei16@h-partners.com> # message auto-generated for no-merge-commit merge: !1468 merge master into master add ascend350 config Created-by: ASCEND222 Commit-by: ASCEND222 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> add ascend350 config ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-cv/issues/869 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1468 | 13 天前 | |
add ascend350 config Co-authored-by: ASCEND222<dongfei16@h-partners.com> # message auto-generated for no-merge-commit merge: !1468 merge master into master add ascend350 config Created-by: ASCEND222 Commit-by: ASCEND222 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> add ascend350 config ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-cv/issues/869 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1468 | 13 天前 | |
refactor: 拆分build.sh为模块化脚本 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !1204 merge master_refactor_build into master refactor: 拆分build.sh为模块化脚本 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 将 build.sh(~1900行)按职责拆分为 8 个模块化脚本,提升可维护性和复用性。 ### 模块结构 | 文件 | 行数 | 职责 | |------|------|------| | build.sh | 12 | 入口:source 所有模块 | | scripts/build_conf.sh | 163 | 全局变量、路径、工具函数 | | scripts/build_options.sh | 973 | 选项解析、参数校验、帮助信息 | | scripts/build_cmake.sh | 147 | CMake 参数组装、项目初始化 | | scripts/build_lib.sh | 284 | 库构建、二进制构建、包构建 | | scripts/build_ut.sh | 33 | 单元测试构建 | | scripts/build_example.sh | 267 | 示例构建与运行 | | scripts/build_genop.sh | 72 | 算子代码生成 | | scripts/build_clean.sh | 41 | 构建清理 | ### 功能等价性 - 35 个函数全部迁移,逻辑未改动 - 命令行接口不变:所有 --xxx 参数行为一致 - 构建流程不变:cmake 参数、编译选项、包类型处理完全一致 ## 关联的Issue [#670](https://gitcode.com/cann/ops-cv/issues/670) ## 测试 所有拆分脚本后的函数测试,覆盖29个用例场景,全都PASS,仓库基本编译出包功能验证okay。 ## 文档更新 ## 类型标签 - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1204 | 1 个月前 | |
refactor: 拆分build.sh为模块化脚本 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !1204 merge master_refactor_build into master refactor: 拆分build.sh为模块化脚本 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 将 build.sh(~1900行)按职责拆分为 8 个模块化脚本,提升可维护性和复用性。 ### 模块结构 | 文件 | 行数 | 职责 | |------|------|------| | build.sh | 12 | 入口:source 所有模块 | | scripts/build_conf.sh | 163 | 全局变量、路径、工具函数 | | scripts/build_options.sh | 973 | 选项解析、参数校验、帮助信息 | | scripts/build_cmake.sh | 147 | CMake 参数组装、项目初始化 | | scripts/build_lib.sh | 284 | 库构建、二进制构建、包构建 | | scripts/build_ut.sh | 33 | 单元测试构建 | | scripts/build_example.sh | 267 | 示例构建与运行 | | scripts/build_genop.sh | 72 | 算子代码生成 | | scripts/build_clean.sh | 41 | 构建清理 | ### 功能等价性 - 35 个函数全部迁移,逻辑未改动 - 命令行接口不变:所有 --xxx 参数行为一致 - 构建流程不变:cmake 参数、编译选项、包类型处理完全一致 ## 关联的Issue [#670](https://gitcode.com/cann/ops-cv/issues/670) ## 测试 所有拆分脚本后的函数测试,覆盖29个用例场景,全都PASS,仓库基本编译出包功能验证okay。 ## 文档更新 ## 类型标签 - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1204 | 1 个月前 | |
新增 TF plugin 编译机制 Co-authored-by: zhaowenrui666<zhaowenrui7@huawei.com> # message auto-generated for no-merge-commit merge: !1209 merge pr_837 into master 新增 TF plugin 编译机制 Created-by: zhaowenrui666 Commit-by: zhaowenrui666 Merged-by: cann-robot Description: ## 描述 新增 ops-cv TensorFlow plugin 编译机制: - 增加 optf_plugin_cv target 及 --tfplugin 独立构建入口。 - --pkg 内置包构建额外携带 liboptf_plugin_cv.so,对齐 ops-math/ops-nn 的 TF plugin 包装方式。 - TF plugin object target 使用生成的 ge_ir.proto header 初始化,并通过 common/src/framework/cv_stub_tf_plugin.cpp 保持目标可构建。 - 保留 add_tf_plugin_sources() 作为单算子目录显式接入入口。 - 暂不默认自动收集各算子目录下 framework/*_tf_plugin.cpp,因为 cv 仓现有部分 TF plugin 文件依赖非公开 GE 头文件;后续文件整改后可打开 ENABLE_AUTO_TF_PLUGIN_SOURCES。 ## 关联的Issue #706 ## 测试 已完成: - bash -n build.sh scripts/build_conf.sh scripts/build_options.sh scripts/build_lib.sh - bash build.sh --tfplugin --ccache=off - Built target optf_plugin_cv_obj - Built target optf_plugin_cv - 生成 build/liboptf_plugin_cv.so - 确认 stub 编译进 TF plugin object: - build/CMakeFiles/optf_plugin_cv_obj.dir/common/src/framework/cv_stub_tf_plugin.cpp.o - /home/developer/.local/bin/pre-commit run --files <本 PR 修改文件> 回归结论: - --tfplugin 独立构建通过。 - ENABLE_JIT 未参与 TF plugin 库目标选择,未改变现有 --jit 语义。 - ENABLE_TEST=TRUE、非 installed CANN package 场景下 TF plugin CMake 入口直接返回,不引入 UT 路径。 注意事项: - 其他现有 *_tf_plugin.cpp 若仍依赖非公开 GE 头文件,需要由对应组件后续整改后再纳入自动收集。 ## 文档更新 无。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [x] 📦 构建/CI - [x] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1209 | 1 个月前 | |
refactor: 拆分build.sh为模块化脚本 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !1204 merge master_refactor_build into master refactor: 拆分build.sh为模块化脚本 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 将 build.sh(~1900行)按职责拆分为 8 个模块化脚本,提升可维护性和复用性。 ### 模块结构 | 文件 | 行数 | 职责 | |------|------|------| | build.sh | 12 | 入口:source 所有模块 | | scripts/build_conf.sh | 163 | 全局变量、路径、工具函数 | | scripts/build_options.sh | 973 | 选项解析、参数校验、帮助信息 | | scripts/build_cmake.sh | 147 | CMake 参数组装、项目初始化 | | scripts/build_lib.sh | 284 | 库构建、二进制构建、包构建 | | scripts/build_ut.sh | 33 | 单元测试构建 | | scripts/build_example.sh | 267 | 示例构建与运行 | | scripts/build_genop.sh | 72 | 算子代码生成 | | scripts/build_clean.sh | 41 | 构建清理 | ### 功能等价性 - 35 个函数全部迁移,逻辑未改动 - 命令行接口不变:所有 --xxx 参数行为一致 - 构建流程不变:cmake 参数、编译选项、包类型处理完全一致 ## 关联的Issue [#670](https://gitcode.com/cann/ops-cv/issues/670) ## 测试 所有拆分脚本后的函数测试,覆盖29个用例场景,全都PASS,仓库基本编译出包功能验证okay。 ## 文档更新 ## 类型标签 - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1204 | 1 个月前 | |
【fix】: 修复precommit的oat检查抢资源问题 Co-authored-by: zhangfands<18768316492@163.com> # message auto-generated for no-merge-commit merge: !1052 merge zf1 into master 【fix】: 修复precommit的oat检查抢资源问题 Created-by: zhangfands Commit-by: zhangfands Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复precommit的oat检查抢资源问题 本次针对二个问题进修修复,文件抢资源、pip抢资源 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-cv/issues/566 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ops-cv/pull/1047 进行了测试 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [x] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1052 | 2 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 20 天前 | ||
| 3 个月前 | ||
| 8 天前 | ||
| 2 个月前 | ||
| 10 天前 | ||
| 1 个月前 | ||
| 8 个月前 | ||
| 11 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 13 天前 | ||
| 13 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 2 个月前 |