| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
!3384 merge develop into master 【PR】: sync develop to master 20260604 Created-by: wangxiaotian995 Commit-by: KenChow;wuzheng-hw;zhuhaoran5;du-hua1024;wx1127857;yelongjian;hugo111;kobemini;WangYanMale;fu-jun2;yuht9;huanruizhi Merged-by: cann-robot Description: # Pull Request ## 描述 请清晰准确地描述本次 Pull Request 的意图和变更内容。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!3384 | 3 个月前 | |
feat(om2): 实现离线动态分档功能 Co-authored-by: wuzheng-hw<wuzheng14@huawei.com> # message auto-generated for no-merge-commit merge: !3347 merge dynamicBatch into develop feat(om2): 实现离线动态分档功能 Created-by: wuzheng-hw Commit-by: wuzheng-hw Merged-by: cann-robot Description: # Pull Request ## 描述 实现 OM2 离线模型的动态分档(Dynamic Bucketing)功能,支持运行时切换预编译档位,与 OM1 动态分档行为保持一致。 ## 变更类型 - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新 - [ ] ♻️ 重构 - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 核心改动 ### 编译期解禁 - 从 kOm2UnsupportedOptions 移除 DYNAMIC_BATCH_SIZE/IMAGE_SIZE/DIMS (compiler/api/aclgrph/ge_ir_build.cc) - 从 kOm2UnsuppotedFlag 移除 dynamic_batch_size/image_size/dims (api/atc/main_impl.cc) ### Om2ModelExecutor 新增接口 - SetDynamicSize: 设置动态档位(校验 dynamic_type 匹配 + 档位合法性) - GetCurrentShape: 查询当前已设置的档位信息 ### 共享工具函数提取 - GetCurGearIndex/GetCurOuputShapeInfo/GetModelOutputShapeInfoHelp 从 model.cpp 提取到 model_common,供 OM2 复用 ### ACL 层接口实现 - aclmdlSetDynamicBatchSizeImplOm2: 设置动态 batch size - aclmdlSetDynamicHWSizeImplOm2: 设置动态分辨率 - aclmdlSetInputDynamicDimsImplOm2: 设置动态 dims - aclmdlGetCurOutputDimsImplOm2: 查询当前档位对应输出 shape(静态模型回退兼容) - aclmdlGetDescImplOm2: 填充 dynamicBatch/HW/Dims/OutputShape 动态字段 ## 测试 ### Om2ModelExecutor 层(13 个用例,全部通过 ✅) - SetDynamicSize: 有效档位、无效档位、类型不匹配、空输入、多次更新、全档位遍历 - GetCurrentShape: 设置前后状态、失败后状态 ### ACL 层(50+ 用例) - 共享函数边界测试: GetCurGearIndex/GetCurOuputShapeInfo/GetModelOutputShapeInfoHelp - ACL 接口测试: SetDynamicBatchSize/HWSize/DynamicDims 边界值 - 集成测试: 完整 Set→Get 流程 ## 向后兼容性 | 场景 | 行为 | |------|------| | 静态 OM2 + aclmdlGetDesc | 正常,不填充动态字段 | | 静态 OM2 + GetCurOutputDims | 返回静态 dims | | 静态 OM2 + SetDynamicBatchSize | 返回错误(type mismatch) | | 动态 OM2 + 未 Set + GetCurOutputDims | 返回静态 dims | | 动态 OM2 + Set + GetCurOutputDims | 返回档位对应 dims | ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签 - [x] 我已经详细阅读了贡献指南 See merge request: cann/ge!3347 | 3 个月前 | |
fix:解决MDC场景下UpdateModelParam_dav_2201编译问题 Co-authored-by: 叶龙剑<yelongjian1@huawei.com> # message auto-generated for no-merge-commit merge: !3415 merge dev-22010606 into develop fix:解决MDC场景下UpdateModelParam_dav_2201编译问题 Created-by: yelongjian Commit-by: 叶龙剑 Merged-by: cann-robot Description: # Pull Request ## 描述 fix:解决MDC场景下UpdateModelParam_dav_2201编译问题 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1.NA ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!3415 | 3 个月前 | |
【fix】:add GetAllocator stub func in stub_hybrid_executor Co-authored-by: 唐豪杰<tanghaojie1@huawei.com> # message auto-generated for no-merge-commit merge: !3393 merge memory_pool_static into develop 【fix】:add GetAllocator stub func in stub_hybrid_executor Created-by: tang-haojie Commit-by: 唐豪杰 Merged-by: cann-robot Description: # Pull Request ## 描述 stub_hybrid_executor是桩so,此次model_manager.cc中引入GetAllocator符号,需要在桩so中添加实现,否则会出现未定义符号报错 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!3393 | 3 个月前 | |
feat: 自定义算子多模型支持 Co-authored-by: Chang-an-HW<machangan@huawei.com> # message auto-generated for no-merge-commit merge: !3026 merge custom-op-multi-model into develop feat: 自定义算子多模型支持 Created-by: Chang-an-HW Commit-by: Chang-an-HW Merged-by: cann-robot Description: # Pull Request ## 描述 实现自定义算子(Custom Op)多模型支持,为每个模型建立独立的 CustomOpRegistry, 确保不同模型的同名自定义算子互不干扰。 核心变更: - 引入统一的 CustomOpRegistry,支持模型级隔离 - 实现基于内容寻址租约(content-addressed lease)的 SO 加载机制 - 在运行时中接入模型级 custom op registry - 重构 CustomOpFactoryImpl,由 CustomOpFactory 直接管理注册表 - 拦截空自定义算子序列化,避免异常 ## 变更类型 - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新 - [x] ♻️ 重构 - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 如何测试 1. 编译 GE 项目: bash build.sh --ge_compiler 2. 运行相关 UT:自定义算子注册、加载、序列化相关用例 3. 验证多模型场景下同名自定义算子互不干扰 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md) ## 其他信息 2547 个文件变更,449973 行新增,9548 行删除(含大量测试代码和 stub)。 此 PR 包含从基础注册表到运行时接入的完整链路。 See merge request: cann/ge!3026 | 3 个月前 | |
feat: 自定义算子多模型支持 Co-authored-by: Chang-an-HW<machangan@huawei.com> # message auto-generated for no-merge-commit merge: !3026 merge custom-op-multi-model into develop feat: 自定义算子多模型支持 Created-by: Chang-an-HW Commit-by: Chang-an-HW Merged-by: cann-robot Description: # Pull Request ## 描述 实现自定义算子(Custom Op)多模型支持,为每个模型建立独立的 CustomOpRegistry, 确保不同模型的同名自定义算子互不干扰。 核心变更: - 引入统一的 CustomOpRegistry,支持模型级隔离 - 实现基于内容寻址租约(content-addressed lease)的 SO 加载机制 - 在运行时中接入模型级 custom op registry - 重构 CustomOpFactoryImpl,由 CustomOpFactory 直接管理注册表 - 拦截空自定义算子序列化,避免异常 ## 变更类型 - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新 - [x] ♻️ 重构 - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 如何测试 1. 编译 GE 项目: bash build.sh --ge_compiler 2. 运行相关 UT:自定义算子注册、加载、序列化相关用例 3. 验证多模型场景下同名自定义算子互不干扰 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md) ## 其他信息 2547 个文件变更,449973 行新增,9548 行删除(含大量测试代码和 stub)。 此 PR 包含从基础注册表到运行时接入的完整链路。 See merge request: cann/ge!3026 | 3 个月前 | |
【PR】: 【Feature】GE支持模型编译生成原生可执行代码一阶段 Co-authored-by: 谢正恺<xiezhengkai@huawei.com> Co-authored-by: wangyuchen<wangyuchen38@huawei.com> # message auto-generated for no-merge-commit merge: !819 merge feat/om2-under-review into develop 【PR】: 【Feature】GE支持模型编译生成原生可执行代码一阶段 Created-by: ClarkXie Commit-by: 谢正恺;wangyuchen Merged-by: cann-robot Description: # Pull Request ## 描述 新增模型编译生成代码特性,包含以下功能: - ATC 新增 --mode=7 参数,支持将 pb、onnx、air 模型转换为 OM2 模型。(caffe 转模型在部分形态的 NPU 上不支持,请参考社区资料) - ACL 支持加载、执行 OM2 模型。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!819 | 6 个月前 |