| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
!4829 merge fix/issue-551-model-extend-boundary-check into master fix: 校验模型扩展分区长度(#551) Created-by: ningjingyuan Commit-by: ningjingyuan Merged-by: cann-robot Description: # Pull Request ## 描述 修复 ParseModelDescExtend 未校验模型扩展分区内部长度的问题。 OM 文件中的 ModelExtendHead::len 来自外部输入。原实现直接将该长度传入 ParseTlvList,当声明长度超过扩展分区实际剩余空间时,子解析器可能读取分区边界之外的数据。 本次变更: - 在解析 TLV 列表前校验 extendDesc->len <= size - sizeof(ModelExtendHead),越界时返回 ACL_ERROR_GE_LOAD_MODEL。 - 为普通内存加载路径增加最小一字节越界回归用例,通过缩短分区表中的声明长度验证 GE 在解析阶段拒绝非法模型且不调用 Runtime。 - 为 LiteOS 文件查询路径增加最小一字节越界回归用例,验证按分区长度读取的缓冲区受到相同边界保护。 - 将既有 AbnormalInvalidLen 用例调整为 FifoMallocFailed:把扩展区长度由非法的 52 改为与实际 TLV 一致的 36,使其继续稳定覆盖 ProcFifoInfo 的 FIFO 地址数组分配失败分支。 ## 变更类型 - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue Closes #551 https://gitcode.com/cann/ge/issues/551 ## 如何测试 1. 增量编译 ut_ge_executor_c_utest,目标编译成功。 2. 执行 UtestGEExecutorTest.GeExecutorCaseParseModelDescExtend*,10/10 通过。 3. 执行 UtestGEExecutorLiteOSTest.GeExecutorCaseParseModelDescExtend*,3/3 通过。 4. 对变更测试文件执行 pre-commit 检查,clang-format、codespell、私钥检测和 OAT 等检查全部通过。 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 本次变更无需更新文档(不改变公开 API、ABI 或 OM 格式) - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 本次修改仅在解析不合法 OM 扩展分区时提前返回错误,不改变合法模型的加载行为。 See merge request: cann/ge!4829 | 1 个月前 | |
fix: 清理clean code告警 Co-authored-by: likun104<likun104@h-partners.com> # message auto-generated for no-merge-commit merge: !5226 merge br_fix_clean_code_0929 into develop fix: 清理clean code告警 Created-by: likun104 Commit-by: likun104 Merged-by: cann-robot Description: # Pull Request ## 描述 清理clean code告警 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 流水线跑通过,且rdv跑通过 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!5226 | 21 天前 | |
【PR】: feat: OM2模型支持加载后动态设置流优先级 Co-authored-by: weixin_45332508<zhufan31@huawei.com> # message auto-generated for no-merge-commit merge: !5169 merge master_9_22 into develop 【PR】: feat: OM2模型支持加载后动态设置流优先级 Created-by: weixin_45332508 Commit-by: weixin_45332508 Merged-by: cann-robot Description: # Pull Request ## 描述 20260920评审通过 实现acl接口aclmdlSetAttributeImplOm2/aclmdlGetAttributeImplOm2,OM2模型支持加载后动态设置流优先级 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1.在加载模型后,设置调用接口aclmdlSetAttribute设置流优先级,调用接口aclmdlGetAttribute获取流优先级,查看两个priority是否一致 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!5169 | 21 天前 | |
fix: precommit整改 Co-authored-by: yelongjian<yelongjian1@huawei.com> # message auto-generated for no-merge-commit merge: !3726 merge dev-precommit into develop fix: precommit整改 Created-by: yelongjian Commit-by: yelongjian Merged-by: cann-robot Description: # Pull Request ## 描述 precommit整改 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [x] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的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!3726 | 4 个月前 | |
fix: precommit整改 Co-authored-by: yelongjian<yelongjian1@huawei.com> # message auto-generated for no-merge-commit merge: !3726 merge dev-precommit into develop fix: precommit整改 Created-by: yelongjian Commit-by: yelongjian Merged-by: cann-robot Description: # Pull Request ## 描述 precommit整改 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [x] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的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!3726 | 4 个月前 | |
feat: aclrtGetThreadLastTaskId 保守替换为 aclrtGetThreadLastTaskIdAndStreamId Co-authored-by: chenqian1365<chenqian2@huawei.com> # message auto-generated for no-merge-commit merge: !5312 merge feat/replace-aclrt-thread-last-taskid-clean into develop feat: aclrtGetThreadLastTaskId 保守替换为 aclrtGetThreadLastTaskIdAndStreamId Created-by: chenqian1365 Commit-by: chenqian1365 Merged-by: cann-robot Description: # Pull Request ## 描述 aclrtGetThreadLastTaskId 接口计划下线,由 aclrtGetThreadLastTaskIdAndStreamId 替代。本 PR 仅覆盖 **GE 责任田**内的调用点,做保守替换: - GE 业务调用点(task_context、op_task、custom_task_info、OM2 gert_model_executor_callbacks、executor_dumper、dump_op)替换为新接口,新增 acl_stream_id 局部占位变量接收 streamId 出参(新接口要求两个出参均非空) - **保留 aclrtStreamGetId 成对调用**,streamId 仍取 GE 持有的 stream 句柄,运行行为零变化(规避 capture 场景下新接口返回 runtime 内部 shadow stream ID 的语义差异) - 同步更新 GE 公共桩:tests/depends/ascendcl、ge_runtime_stub 新增新接口实现,保留旧符号与 999 失败注入机制 - 同步更新 UT:custom_task_info_unittest(MOCK_METHOD2)、gert_model_executor_callbacks_unittest(override)、program_generator_unittest - **范围说明**:FE(task_info/fe/ 下 kernel/fusion/dsa/super_kernel)、AICPU(kernel_ex_task_info)、FFTS+、TE 融合引擎(te_fusion stub)、aicore/aicpu engine executor 及 task_info/rts/ 等非 GE 责任田的调用点**不在本 PR 范围**,建议由对应团队参考本 PR 自行迁移 ## 变更类型 - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue ## 如何测试 1. 完整版本(含全部责任田调用点)在本机通过 ut_libge_distinct_load_utest(2110 例)与 ut_libge_multiparts_utest(3104 例)全量回归;本 PR 保留的调用点为其子集,改动内容与回归版本完全一致 2. 本 PR 全部 13 个改动文件逐一经编译数据库(compile_commands)独立编译验证通过 3. pre-commit 全部 hooks 通过(clang-format v22.1.5、codespell 等) ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 - 前置依赖:编译基线需包含 aclrtGetThreadLastTaskIdAndStreamId 声明(runtime 仓 master 已合入)。若 CI 基线的 acl_rt.h 尚无该声明会编译失败,需确认基线版本 - 后续(不在本 PR 范围):评估将 aclrtStreamGetId 成对调用合并为新接口单次调用。注意 capture/aclgraph 场景新接口返回 runtime 内部 stream ID,与 aclrtStreamGetId(stream_) 语义不同,需先在 dump/异常定位场景验证 See merge request: cann/ge!5312 | 23 天前 | |
!5338 merge develop into master 【PR】: sync develop to master 20261009 Created-by: Jett_Woo Commit-by: gentle-knight;Dazhou_Cao;tangqunzhang;lining23666;liyanrong_9;wuzheng-hw;KenChow;fary86;likun104 Merged-by: cann-robot Description: # Pull Request ## 描述 sync develop to master 20261009 ## 变更类型 请选择本次引入的变更类型: <!-- [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!5338 | 21 天前 | |
feat: 支持自定义算子能力识别与 Python 适配器 Co-authored-by: du-hua1024<duhua2@huawei.com> # message auto-generated for no-merge-commit merge: !3970 merge op-cpp into develop feat: 支持自定义算子能力识别与 Python 适配器 Created-by: du-hua1024 Commit-by: du-hua1024 Merged-by: cann-robot Description: # Pull Request ## 描述 本 PR 为 C++ 自定义算子补充能力标识和统一转型入口,并新增 Python custom op runtime adapter 的基础实现。 主要变更: - 新增 CustomOpCapability / CustomOpCast,让调用点按 capability 判断 EagerExecuteOp、CompilableOp、ShapeInferOp、PortableOp、ArgsUpdater。 - 将现有自定义算子执行、编译、shape 推导、序列化和地址刷新调用点从直接 dynamic_cast 切换为 CustomOpCast。 - 新增 custom_op_runtime 目标和 Python custom op adapter/registry 基础类型,用于承接 Python 自定义算子执行能力。 - 将 custom_op_runtime 纳入 ge-executor 构建和 ge-executor 包安装范围,并补充相关 UT 链接和用例。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue 无。 ## 如何测试 新增及历史ut运行正常 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已确认本 PR 不涉及文档更新 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 本 PR 是自定义算子 Python eager 执行能力的 C++ capability 和 adapter 基础部分,Python bridge/公开 Python surface 可在后续 PR 中继续拆分提交。 See merge request: cann/ge!3970 | 3 个月前 |