GE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。
| Files | Last commit | Last update |
|---|---|---|
【PR】:更新自定义算子入图资料 Co-authored-by: sophia1213<sophie.chen@huawei.com> # message auto-generated for no-merge-commit merge: !5365 merge develop into develop 【PR】:更新自定义算子入图资料 Created-by: sophia1213 Commit-by: sophia1213 Merged-by: cann-robot Description: # Pull Request ## 描述 更新自定义算子入图资料。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue 不涉及 ## 如何测试 根据最新资料进行测试 ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!5365 | 27 days ago | |
临时关闭hcce UT/ST Report:配套UT/ST门禁临时关闭,修改job既有分支条件为不可满足 | 25 days ago | |
chore: 移除 superpowers skill 配置及 AGENTS.md 相关引用(#572) Co-authored-by: stevenaw0<huangguijun@huawei.com> # message auto-generated for no-merge-commit merge: !5065 merge chore/remove-superpowers-skill into develop chore: 移除 superpowers skill 配置及 AGENTS.md 相关引用(#572) Created-by: stevenaw0 Commit-by: stevenaw0 Merged-by: cann-robot Description: # Pull Request ## 描述 移除仓库中第三方 superpowers skill/插件的启用配置,并同步改写 AGENTS.md 中引用 superpowers 的段落。 具体变更: - .claude/settings.json:删除 enabledPlugins 中的 superpowers@claude-plugins-official 条目 - .opencode/opencode.json:删除 plugin 中的 superpowers@git+https://github.com/obra/superpowers.git 条目 - AGENTS.md / AGENTS_en.md:"需求开发与新增功能"章节的使用技能由 superpower brainstorming skill 改为仓库自有的 ge-requirement-design;"设计文档检查项"章节去掉 brainstorming 输出文档、写入 docs/superpowers/specs 触发词,并把说明中的 superpowers 表述改为通用表述(设计文档模板与跨特性交叉影响检查要求保持不变) 变更原因: 1. superpowers 插件需从 github.com 拉取,离线/内网环境下 opencode 启动会失败或长时间等待 2. 插件注入的 brainstorming 等流程与仓库自有设计文档规范冲突,AGENTS.md 需额外声明兜底规则 3. 第三方插件随仓库配置分发但未登记在开源软件清单中,存在合规风险 4. 仓库已有等价能力(设计文档模板 + 自建 skill),无需保留外部插件 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue https://gitcode.com/cann/ge/issues/572 ## 如何测试 描述测试此变更的步骤和前提条件: 1. python3 -c "import json; json.load(open('.claude/settings.json')); json.load(open('.opencode/opencode.json'))",JSON 解析通过 2. grep -ri superpower .claude/settings.json .opencode/opencode.json AGENTS.md AGENTS_en.md,无残留引用 3. git diff --name-only HEAD~1 | xargs pre-commit run --files,全部 Passed(codespell 需临时 unset LD_LIBRARY_PATH,否则本地 Python 的 ctypes 加载 libffi 报错,与本变更无关) 4. 启动 AI 编码助手不再拉取 superpowers 插件,仓库自有 skill 与设计文档模板流程不受影响 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 本次变更仅涉及 AI 编码助手配置文件与贡献者指引文档,不涉及任何运行时代码、构建脚本和测试用例。 设计文档输出规范保持不变:仍必须读取仓库设计文档模板并覆盖模板中的每个章节。 See merge request: cann/ge!5065 | 1 month ago | |
fix: 清理clean code告警 Co-authored-by: likun104<likun104@h-partners.com> # message auto-generated for no-merge-commit merge: !5354 merge br_fix_clean_code_1010 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!5354 | 26 days ago | |
fix: 清理clean code告警 Co-authored-by: likun104<likun104@h-partners.com> # message auto-generated for no-merge-commit merge: !5407 merge br_fix_clean_code_1015 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!5407 | 24 days ago | |
feat: 迁移ordinary AICPU常量折叠至opbase Co-authored-by: pan-tong<pantong@huawei.com> # message auto-generated for no-merge-commit merge: !5360 merge feat/opconstant-folding-migration-final into develop feat: 迁移ordinary AICPU常量折叠至opbase Created-by: pan-tong Commit-by: pan-tong Merged-by: cann-robot Description: --- title: "feat: 迁移ordinary AICPU常量折叠至opbase" labels: ["enhancement"] assignees: "pan-tong" --- # Pull Request ## 描述 接入[opbase #751](https://gitcode.com/cann/opbase/merge_requests/751)交付的 libopconstant_folding.so:GE解析真实host_cpu目录并调用ConstantFoldingInitialize。删除GE旧ordinary AICPU常量折叠源码、target、stub、专用UT/ST和交付项,同时清理旧cpu_kernels测试依赖。保留libconstant_folding_ops.so、HostCPU fused及RT2能力。 本PR只包含正式迁移代码,不重复携带[GE #5340](https://gitcode.com/cann/ge/merge_requests/5340)修复。合入依赖:#5340先合入develop,本PR随后刷新到包含#5340的最新develop后再合入。黄区已使用迁移复现包和迁移+#5340联合包验证问题修复有效。 ## 变更类型 - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue https://gitcode.com/cann/ge/issues/591 关联PR:[GE #5340](https://gitcode.com/cann/ge/merge_requests/5340)、[opbase #751](https://gitcode.com/cann/opbase/merge_requests/751)、[runtime #4975](https://gitcode.com/cann/runtime/merge_requests/4975)、[CMake #329](https://gitcode.com/cann/cmake/merge_requests/329)。 ## 如何测试 1. 基于最新develop 5c845d6f8重放正式迁移,保持单提交且git diff --check通过。 2. pre-commit、clang-format、codespell和OAT通过。 3. 文件范围仅包含18个正式迁移文件,不包含诊断文档、复现程序或#5340重复代码。 4. 黄区使用迁移复现包确认未修复路径可复现;使用迁移+#5340联合包确认TransData由AICPU直接折叠成功。 5. 本PR重新触发完整远端compile流水线。 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 无需更新Markdown文档,#5340已更新中英文设计文档 - [x] 我在标题中使用了合适的类型标签 - [x] 我已遵守贡献指南和单提交要求 ## 其他信息 合入顺序:先[GE #5340](https://gitcode.com/cann/ge/merge_requests/5340),再刷新并合入本PR。 See merge request: cann/ge!5360 | 27 days ago | |
!5416 merge develop into master 【PR】: sync develop to master 20261015 Created-by: Jett_Woo Commit-by: SeasonChu;lincj_;qq_40517592;likun104;Dazhou_Cao;hamburgerbobo;chengyutao3 Merged-by: cann-robot Description: # Pull Request ## 描述 sync develop to master 20261015 ## 变更类型 请选择本次引入的变更类型: <!-- [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!5416 | 23 days ago | |
【PR】: 删除Ascend-runtime_device-minios.tar.gz打包 Co-authored-by: lining23666<lining.li@huawei.com> # message auto-generated for no-merge-commit merge: !5096 merge chore/delete-minios-package into develop 【PR】: 删除Ascend-runtime_device-minios.tar.gz打包 Created-by: lining23666 Commit-by: lining23666 Merged-by: cann-robot Description: # Pull Request ## 描述 Ascend-runtime_device-minios.tar.gz 已过兼容周期,后续不再需要打包,删除其完整打包链: - dflow/udf/cmake/device/CMakeLists.txt:删除 minios 打包段(hccd-compat 解包、unzip_hccd_compat/pack_runtime_device 目标、签名及 install 到 runtime/lib64),同时解除对 hccd 仓 pack_cann_hccd_compat 的联编依赖;cann-udf-compat.tar.gz 打包/签名保留 - dflow/udf/cmake/device/sign/runtime_dev_sign.xml:删除该包专用签名配置 - scripts/package/module/ascend/DflowExecutorSo.xml:删除 runtime、runtime/lib64 目录声明及该包的 file_info 块 说明:dflow/deployer/deploy/flowrm/tsd_client.cc 中 LoadPackages 保留不动——新驱动 tsd client 仍需通过该调用触发内部加载 udf/hccd 子包,不依赖 minios 文件实际存在(与历史删除提交 75bc07627 处理一致)。 ## 变更类型 - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue 无 ## 如何测试 1. bash build.sh --dflow 构建成功(Built target dflow-executor),产物含 compat/cann-udf-compat.tar.gz,不再生成 Ascend-runtime_device-minios.tar.gz 2. git grep "Ascend-runtime_device" 仅剩 tsd_client.cc 运行时触发入口两处引用(预期保留) 3. 本地 pre-commit 检查全部 Passed ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 纯删除改动(3 files changed, 78 deletions)。本地构建为 ENABLE_SIGN=off,ENABLE_SIGN 分支为纯删除、if/else/endif 结构已复核,建议 CI 带签名流水线覆盖验证。 See merge request: cann/ge!5096 | 30 days ago | |
!5416 merge develop into master 【PR】: sync develop to master 20261015 Created-by: Jett_Woo Commit-by: SeasonChu;lincj_;qq_40517592;likun104;Dazhou_Cao;hamburgerbobo;chengyutao3 Merged-by: cann-robot Description: # Pull Request ## 描述 sync develop to master 20261015 ## 变更类型 请选择本次引入的变更类型: <!-- [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!5416 | 23 days ago | |
fix: Triton样例ffts_addr注释不再绑定特定设备型号 Co-authored-by: shangdf<shangdongfang1@huawei.com> # message auto-generated for no-merge-commit merge: !5366 merge fix/triton-sample-auto-ffts-develop into develop fix: Triton样例ffts_addr注释不再绑定特定设备型号 Created-by: shangdf Commit-by: shangdf Merged-by: cann-robot Description: # Pull Request ## 描述 Triton 自定义算子样例( examples/custom_op/triton_add_custom)中,kernel args 的 ffts_addr 参数注释标注"如果设备是 A3 则需要加上这个参数",将该参数的取舍绑定到特定设备型号。 实际上该参数取决于 npubin 编译时是否启用 FFTS 调度特性,而非固定设备型号。本 PR 调整为: - ge/src/custom_op.cpp:注释改为说明判断依据——在编译 npubin 的环境中执行一条命令(triton-ascend 的 is_ffts_supported / get_ascend_arch_from_env / force_disable_ffts 组合判断,与 triton-ascend 生成 launcher 的逻辑一致)判断是否启用 FFTS 调度特性;需要时取消 ffts_addr 参数注释,并通过公开 ACL 接口 aclrtGetHardwareSyncAddr 获取 C2C 控制区地址传入(GE 下发任务时也使用该接口)。代码逻辑不变,默认写法保持注释状态。 - README.md / README_en.md:"快速运行"部分同步补充该判断命令及说明。 ## 变更类型 - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue 无 ## 如何测试 1. 注释修改不影响编译:使用样例 CMakeLists 等价参数构建 libcust_opapi.so 通过。 2. 在 Atlas A3 训练系列(Ascend910_9362)环境验证过:不带 ffts_addr 时 sync 报错 507057(FFTS_PLUS 错误);按注释取消注释并通过 aclrtGetHardwareSyncAddr 获取地址传入后计算结果全部正确。 3. 判断命令已在真实 NPU 环境验证:默认输出 True;TRITON_DISABLE_FFTS=true 时输出 False。 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 无 See merge request: cann/ge!5366 | 27 days ago | |
fix: 清理clean code告警 Co-authored-by: likun104<likun104@h-partners.com> # message auto-generated for no-merge-commit merge: !5374 merge br_fix_clean_code_1013 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!5374 | 25 days ago | |
revert: 回退 OPP deliverables 清单加载支持(!4929) Co-authored-by: 19851937626<zhuxincheng2@huawei.com> # message auto-generated for no-merge-commit merge: !5427 merge revert/mr-4929-ops-deliverables into develop revert: 回退 OPP deliverables 清单加载支持(!4929) Created-by: SeasonChu Commit-by: 19851937626 Merged-by: cann-robot Description: # Pull Request ## 描述 回退 MR !4929 引入的 OPP deliverables 清单加载支持,恢复原有 OPP 目录发现和算子库加载流程。 - 移除 OpsDeliverablesManager 及其在 GE 初始化、ACL Graph、Generator、Executor、Parser 和 ATC 框架插件加载入口的接入。 - 恢复通过 OppPackageUtils::LoadAllOppPackage() 加载 OPP 包,以及原有框架插件路径发现逻辑。 - 移除该特性的 UT/ST 与测试构建配置,并更新架构文档中的加载流程说明。 回退后,GE 不再读取 ASCEND_OPP_PATH/conf/ops_deliverables.json 来指定算子库和框架插件加载路径。 ## 变更类型 - [x] ↩️ 回退变更 - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue 对应原 MR !4929;无已知关联 Issue。 ## 如何测试 1. 在与 develop 相同的 CANN/OPP 环境中执行 GE 初始化及 ATC、Parser、Executor 相关测试,确认恢复原有 OPP 目录发现流程。 2. 执行仓库 CI,检查编译、UT/ST 和代码检查结果。 测试结果以 PR 页面最新的 CI 状态为准;本描述不将未完成的测试记为已通过。 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 回退提交:a7ccf32dfd312bddd339545fbaf0506d00e9ce6c。 See merge request: cann/ge!5427 | 23 days ago | |
fix: preserve empty dimensions in TensorFlow Mean output shapes Co-authored-by: KaranocaVe<karanocave@qq.com> # message auto-generated for no-merge-commit merge: !5216 merge fix/tensorflow-mean-empty-shape-develop into develop fix: preserve empty dimensions in TensorFlow Mean output shapes Created-by: KaranocaVe Commit-by: KaranocaVe Merged-by: cann-robot Description: # fix: preserve empty dimensions in TensorFlow Mean output shapes ## 描述 TensorFlowUtil::TransTensorDescriptor collapses a Mean output shape such as [0, 3] to [0]. This removes the Mean zero-dimension rewrite while keeping the existing FusedBatchNormGrad handling unchanged. ## 变更类型 - [x] Bug 修复 ## 关联的 Issue ## 如何测试 UtestTensorflowParser.tensorflow_MeanPreservesEmptyOutputShape_test checks [0, 3] and the [2, 3] control; both pass with the fix. The ut_parser target builds successfully, and CI against develop has passed. ## 核对清单 - [x] 代码遵循项目风格 - [x] 已完成自测 - [x] 已更新相关设计文档 - [x] 标题使用 fix: 类型标签 - [x] 已阅读并遵循 CONTRIBUTING.md 关联 Issue: https://gitcode.com/cann/ge/issues/594 See merge request: cann/ge!5216 | 27 days ago | |
【refactor】: move amct headers to pkg_inc dir Co-authored-by: kantao1<kantao1@huawei.com> # message auto-generated for no-merge-commit merge: !3863 merge develop into develop 【refactor】: move amct headers to pkg_inc dir Created-by: kantao1 Commit-by: kantao1 Merged-by: cann-robot Description: # Pull Request ## 描述 将与 amct 相关的两个头文件移到 pkg_inc/ 目录下,方便统一管控。 上一单合入PR是:https://gitcode.com/cann/ge/pull/3317 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1.不影响 toolkit 包内头文件位置 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!3863 | 4 months ago | |
!5416 merge develop into master 【PR】: sync develop to master 20261015 Created-by: Jett_Woo Commit-by: SeasonChu;lincj_;qq_40517592;likun104;Dazhou_Cao;hamburgerbobo;chengyutao3 Merged-by: cann-robot Description: # Pull Request ## 描述 sync develop to master 20261015 ## 变更类型 请选择本次引入的变更类型: <!-- [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!5416 | 23 days ago | |
fix: 清理clean code告警 Co-authored-by: likun104<likun104@h-partners.com> # message auto-generated for no-merge-commit merge: !5407 merge br_fix_clean_code_1015 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!5407 | 24 days ago | |
!5416 merge develop into master 【PR】: sync develop to master 20261015 Created-by: Jett_Woo Commit-by: SeasonChu;lincj_;qq_40517592;likun104;Dazhou_Cao;hamburgerbobo;chengyutao3 Merged-by: cann-robot Description: # Pull Request ## 描述 sync develop to master 20261015 ## 变更类型 请选择本次引入的变更类型: <!-- [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!5416 | 23 days ago | |
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 months ago | |
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 months ago | |
refactor: 抽取AtomicMemoryAssigner独立类 Co-authored-by: tangqunzhang<tangqunzhang@huawei.com> # message auto-generated for no-merge-commit merge: !4171 merge refactor/extract-atomic-memory-assigner into develop refactor: 抽取AtomicMemoryAssigner独立类 Created-by: tangqunzhang Commit-by: tangqunzhang Merged-by: cann-robot Description: # Pull Request ## 描述 将GraphMemoryAssigner中的atomic内存分配与清零相关逻辑抽取为独立的AtomicMemoryAssigner类,降低graph_mem_assigner.cc复杂度,提升可维护性。 抽取内容: - atomic_memory_assigner.cc/h:新增文件,包含atomic清零相关的结构体(MemoryOffset、CleanMemInfo、CleanDataTypeValue、AtomicNodeCleanTypeVals)、成员函数(ReAssign、SetAtomicCleanOffset、FilterAtomicNodes、AssignAtomicOutputMemory、AssignFusionAtomicWorkspaceMemory等)及辅助函数 - graph_mem_assigner.cc/h:移除atomic相关函数和结构体,通过atomic_memory_assigner_成员委托调用 - graph_mem_splitter.h:新增GraphMemSplitterPtr类型别名 - 测试用例:适配AtomicMemoryAssigner拆分,封装InitAtomicMemoryAssigner辅助函数 同时补充HCCL算子零拷贝地址刷新判断:IsAddressRefreshable在动态shape静态子图场景认为hccl算子可刷新,统一使用IsHcomNodeNotSupportAddrRefresh的结果。 ## 变更类型 - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) ## 关联的Issue ## 如何测试 1. 基于develop分支编译ge_compiler 2. 运行graph_mem_assigner_unittest、mem_assigner_unittest等单元测试 3. 运行test_graph_compiler系统测试 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签 - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md) ## 其他信息 与PR #4229(从block_mem_assigner抽取零拷贝及辅助函数)拆分,本PR仅包含atomic内存分配逻辑的抽取。 See merge request: cann/ge!4171 | 3 months ago | |
fix: 切换 OAT 合规检查仓库 Co-authored-by: yelongjian<yelongjian1@huawei.com> # message auto-generated for no-merge-commit merge: !4693 merge dev-oat0902 into develop fix: 切换 OAT 合规检查仓库 Created-by: yelongjian Commit-by: yelongjian Merged-by: cann-robot Description: ## 描述 将 OAT 合规检查从仓库本地脚本切换为 HiAgent/compliance 远程 pre-commit hook,固定使用 v1.0.5。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue 无。 ## 如何测试 1. 运行 pre-commit validate-config,配置解析通过。 2. 推送时远程 Git hooks 检查通过。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 无。 See merge request: cann/ge!4693 | 2 months ago | |
chore: 移除 superpowers skill 配置及 AGENTS.md 相关引用(#572) Co-authored-by: stevenaw0<huangguijun@huawei.com> # message auto-generated for no-merge-commit merge: !5065 merge chore/remove-superpowers-skill into develop chore: 移除 superpowers skill 配置及 AGENTS.md 相关引用(#572) Created-by: stevenaw0 Commit-by: stevenaw0 Merged-by: cann-robot Description: # Pull Request ## 描述 移除仓库中第三方 superpowers skill/插件的启用配置,并同步改写 AGENTS.md 中引用 superpowers 的段落。 具体变更: - .claude/settings.json:删除 enabledPlugins 中的 superpowers@claude-plugins-official 条目 - .opencode/opencode.json:删除 plugin 中的 superpowers@git+https://github.com/obra/superpowers.git 条目 - AGENTS.md / AGENTS_en.md:"需求开发与新增功能"章节的使用技能由 superpower brainstorming skill 改为仓库自有的 ge-requirement-design;"设计文档检查项"章节去掉 brainstorming 输出文档、写入 docs/superpowers/specs 触发词,并把说明中的 superpowers 表述改为通用表述(设计文档模板与跨特性交叉影响检查要求保持不变) 变更原因: 1. superpowers 插件需从 github.com 拉取,离线/内网环境下 opencode 启动会失败或长时间等待 2. 插件注入的 brainstorming 等流程与仓库自有设计文档规范冲突,AGENTS.md 需额外声明兜底规则 3. 第三方插件随仓库配置分发但未登记在开源软件清单中,存在合规风险 4. 仓库已有等价能力(设计文档模板 + 自建 skill),无需保留外部插件 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue https://gitcode.com/cann/ge/issues/572 ## 如何测试 描述测试此变更的步骤和前提条件: 1. python3 -c "import json; json.load(open('.claude/settings.json')); json.load(open('.opencode/opencode.json'))",JSON 解析通过 2. grep -ri superpower .claude/settings.json .opencode/opencode.json AGENTS.md AGENTS_en.md,无残留引用 3. git diff --name-only HEAD~1 | xargs pre-commit run --files,全部 Passed(codespell 需临时 unset LD_LIBRARY_PATH,否则本地 Python 的 ctypes 加载 libffi 报错,与本变更无关) 4. 启动 AI 编码助手不再拉取 superpowers 插件,仓库自有 skill 与设计文档模板流程不受影响 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 本次变更仅涉及 AI 编码助手配置文件与贡献者指引文档,不涉及任何运行时代码、构建脚本和测试用例。 设计文档输出规范保持不变:仍必须读取仓库设计文档模板并覆盖模板中的每个章节。 See merge request: cann/ge!5065 | 1 month ago | |
chore: 移除 superpowers skill 配置及 AGENTS.md 相关引用(#572) Co-authored-by: stevenaw0<huangguijun@huawei.com> # message auto-generated for no-merge-commit merge: !5065 merge chore/remove-superpowers-skill into develop chore: 移除 superpowers skill 配置及 AGENTS.md 相关引用(#572) Created-by: stevenaw0 Commit-by: stevenaw0 Merged-by: cann-robot Description: # Pull Request ## 描述 移除仓库中第三方 superpowers skill/插件的启用配置,并同步改写 AGENTS.md 中引用 superpowers 的段落。 具体变更: - .claude/settings.json:删除 enabledPlugins 中的 superpowers@claude-plugins-official 条目 - .opencode/opencode.json:删除 plugin 中的 superpowers@git+https://github.com/obra/superpowers.git 条目 - AGENTS.md / AGENTS_en.md:"需求开发与新增功能"章节的使用技能由 superpower brainstorming skill 改为仓库自有的 ge-requirement-design;"设计文档检查项"章节去掉 brainstorming 输出文档、写入 docs/superpowers/specs 触发词,并把说明中的 superpowers 表述改为通用表述(设计文档模板与跨特性交叉影响检查要求保持不变) 变更原因: 1. superpowers 插件需从 github.com 拉取,离线/内网环境下 opencode 启动会失败或长时间等待 2. 插件注入的 brainstorming 等流程与仓库自有设计文档规范冲突,AGENTS.md 需额外声明兜底规则 3. 第三方插件随仓库配置分发但未登记在开源软件清单中,存在合规风险 4. 仓库已有等价能力(设计文档模板 + 自建 skill),无需保留外部插件 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue https://gitcode.com/cann/ge/issues/572 ## 如何测试 描述测试此变更的步骤和前提条件: 1. python3 -c "import json; json.load(open('.claude/settings.json')); json.load(open('.opencode/opencode.json'))",JSON 解析通过 2. grep -ri superpower .claude/settings.json .opencode/opencode.json AGENTS.md AGENTS_en.md,无残留引用 3. git diff --name-only HEAD~1 | xargs pre-commit run --files,全部 Passed(codespell 需临时 unset LD_LIBRARY_PATH,否则本地 Python 的 ctypes 加载 libffi 报错,与本变更无关) 4. 启动 AI 编码助手不再拉取 superpowers 插件,仓库自有 skill 与设计文档模板流程不受影响 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 本次变更仅涉及 AI 编码助手配置文件与贡献者指引文档,不涉及任何运行时代码、构建脚本和测试用例。 设计文档输出规范保持不变:仍必须读取仓库设计文档模板并覆盖模板中的每个章节。 See merge request: cann/ge!5065 | 1 month ago | |
fix: 修复st_fe_graph_optimizer Co-authored-by: liyanrong9<liyanrong9@h-partners.com> # message auto-generated for no-merge-commit merge: !5349 merge ci_1010 into develop fix: 修复st_fe_graph_optimizer Created-by: liyanrong_9 Commit-by: liyanrong9 Merged-by: cann-robot Description: # Pull Request ## 描述 修复st_fe_graph_optimizer 4 个用例断言失败(Conv2dToConv2dV2FusionPass 融合仍返回 FAILED) ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. ut st ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!5349 | 25 days ago | |
docs: 补充贡献指南中的提交自检清单和GE功能级指引 Co-authored-by: cao qiancheng<220255669@seu.edu.cn> # message auto-generated for no-merge-commit merge: !4152 merge feat/contributing-doc into develop docs: 补充贡献指南中的提交自检清单和GE功能级指引 Created-by: sunsummercqc Commit-by: cao qiancheng Merged-by: cann-robot Description: # Pull Request ## 描述 补充 CONTRIBUTING.md,新增以下章节: 1. **提交前自检清单**:PR 提交前的格式、提交规范、文档要求检查项,以及 CI 门禁说明表,帮助贡献者本地验证避免 CI 失败 2. **GE 功能级贡献指引**:代码目录导航、改动场景→约束文档速查表、设计文档要求、测试要求表、通用编码红线摘要 ## 变更类型 - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue 无 ## 如何测试 1. 阅读 CONTRIBUTING.md,确认新章节格式正确、链接有效 2. 对照新增章节逐项验证:pre-commit 命令是否可执行、CI 门禁表是否完整、目录导航是否准确 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定 ## 其他信息 修改仅涉及 CONTRIBUTING.md 单一文件,不影响代码逻辑。新增内容整合了 GE 仓库已有的分散文档(precommit_guide.md、coding_red_lines.md、架构设计文档等),作为贡献者的一站式入口。 See merge request: cann/ge!4152 | 2 months ago | |
docs: 补充贡献指南中的提交自检清单和GE功能级指引 Co-authored-by: cao qiancheng<220255669@seu.edu.cn> # message auto-generated for no-merge-commit merge: !4152 merge feat/contributing-doc into develop docs: 补充贡献指南中的提交自检清单和GE功能级指引 Created-by: sunsummercqc Commit-by: cao qiancheng Merged-by: cann-robot Description: # Pull Request ## 描述 补充 CONTRIBUTING.md,新增以下章节: 1. **提交前自检清单**:PR 提交前的格式、提交规范、文档要求检查项,以及 CI 门禁说明表,帮助贡献者本地验证避免 CI 失败 2. **GE 功能级贡献指引**:代码目录导航、改动场景→约束文档速查表、设计文档要求、测试要求表、通用编码红线摘要 ## 变更类型 - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue 无 ## 如何测试 1. 阅读 CONTRIBUTING.md,确认新章节格式正确、链接有效 2. 对照新增章节逐项验证:pre-commit 命令是否可执行、CI 门禁表是否完整、目录导航是否准确 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定 ## 其他信息 修改仅涉及 CONTRIBUTING.md 单一文件,不影响代码逻辑。新增内容整合了 GE 仓库已有的分散文档(precommit_guide.md、coding_red_lines.md、架构设计文档等),作为贡献者的一站式入口。 See merge request: cann/ge!4152 | 2 months ago | |
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 months ago | |
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 months ago | |
【PR】: 更新产品名称 Co-authored-by: sophia1213<sophie.chen@huawei.com> # message auto-generated for no-merge-commit merge: !5055 merge develop into develop 【PR】: 更新产品名称 Created-by: sophia1213 Commit-by: sophia1213 Merged-by: cann-robot Description: # Pull Request ## 描述 修改产品名称 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue https://gitcode.com/cann/ge/issues/565 ## 如何测试 根据最新资料进行测试 ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!5055 | 1 month ago | |
【PR】: 更新产品名称 Co-authored-by: sophia1213<sophie.chen@huawei.com> # message auto-generated for no-merge-commit merge: !5055 merge develop into develop 【PR】: 更新产品名称 Created-by: sophia1213 Commit-by: sophia1213 Merged-by: cann-robot Description: # Pull Request ## 描述 修改产品名称 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue https://gitcode.com/cann/ge/issues/565 ## 如何测试 根据最新资料进行测试 ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!5055 | 1 month ago | |
【feat】: upgrade json to v3.12.0 Co-authored-by: kantao1<kantao1@huawei.com> # message auto-generated for no-merge-commit merge: !4283 merge upgrade_json into develop 【feat】: upgrade json to v3.12.0 Created-by: kantao1 Commit-by: kantao1 Merged-by: cann-robot Description: # Pull Request ## 描述 1. 将 json 升级到 v3.12.0 以及修改相关的文档、脚本 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. DT 验证即可 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!4283 | 2 months ago | |
【feat】: upgrade json to v3.12.0 Co-authored-by: kantao1<kantao1@huawei.com> # message auto-generated for no-merge-commit merge: !4283 merge upgrade_json into develop 【feat】: upgrade json to v3.12.0 Created-by: kantao1 Commit-by: kantao1 Merged-by: cann-robot Description: # Pull Request ## 描述 1. 将 json 升级到 v3.12.0 以及修改相关的文档、脚本 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. DT 验证即可 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!4283 | 2 months ago | |
【feat】: upgrade json to v3.12.0 Co-authored-by: kantao1<kantao1@huawei.com> # message auto-generated for no-merge-commit merge: !4283 merge upgrade_json into develop 【feat】: upgrade json to v3.12.0 Created-by: kantao1 Commit-by: kantao1 Merged-by: cann-robot Description: # Pull Request ## 描述 1. 将 json 升级到 v3.12.0 以及修改相关的文档、脚本 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. DT 验证即可 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!4283 | 2 months ago | |
【feat】: upgrade json to v3.12.0 Co-authored-by: kantao1<kantao1@huawei.com> # message auto-generated for no-merge-commit merge: !4283 merge upgrade_json into develop 【feat】: upgrade json to v3.12.0 Created-by: kantao1 Commit-by: kantao1 Merged-by: cann-robot Description: # Pull Request ## 描述 1. 将 json 升级到 v3.12.0 以及修改相关的文档、脚本 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. DT 验证即可 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!4283 | 2 months ago | |
refactor: dflow session/compiler/executor 目录结构调整到 runner 平级目录 Co-authored-by: lining23666<lining.li@huawei.com> # message auto-generated for no-merge-commit merge: !4263 merge dflow into develop refactor: dflow session/compiler/executor 目录结构调整到 runner 平级目录 Created-by: lining23666 Commit-by: lining23666 Merged-by: cann-robot Description: ## 描述 将 dflow 的 session、compiler、executor 三个目录统一移入 dflow/runner/ 下,使 session 与 compiler、executor 处于平行层级。编译产物 libdflow_runner.so 输出到 dflow/runner/ 目录,目录结构与编译结果对应。 **调整前**: dflow/ ├── compiler/ ← 编译层(含 session 子目录) │ ├── CMakeLists.txt ← dflow_runner 编译定义 │ ├── data_flow_graph/ │ ├── model/ │ ├── pne/ │ └── session/ ← session 原在此 ├── executor/ ← 执行层 ├── deployer/ ├── ... **调整后**: dflow/ ├── runner/ ← 新建,dflow_runner 编译入口 │ ├── CMakeLists.txt ← dflow_runner 编译定义 │ ├── compiler/ ← 编译层 │ ├── executor/ ← 执行层 │ └── session/ ← session 层(与 compiler/executor 平级) ├── deployer/ ├── ... ## 变更类型 - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 ## 关联的Issue ## 如何测试 1. 增量编译 dflow_runner 目标,确认 libdflow_runner.so 输出到 dflow/runner/ 目录 2. 确认所有 #include 路径正确解析 3. 确认 pre-commit 检查全部通过 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 - 涉及 112 个文件变更(目录 rename + include 路径更新) - 编译验证通过:libdflow_runner.so 正确输出到 cmake-build-gcov/dflow/runner/libdflow_runner.so - 文档同步更新:docs/zh/design/modules/dflow/dflow.md、docs/en/design/modules/dflow/dflow.md、blacklist.txt See merge request: cann/ge!4263 | 3 months ago | |
chore: 添加体验需求issue模板,构建/测试脚本过滤.gitcode目录修改 Co-authored-by: yelongjian<yelongjian1@huawei.com> # message auto-generated for no-merge-commit merge: !5172 merge dev-issuetpl0924 into develop chore: 添加体验需求issue模板,构建/测试脚本过滤.gitcode目录修改 Created-by: yelongjian Commit-by: yelongjian Merged-by: cann-robot Description: # Pull Request ## 描述 1. 新增体验需求 issue 模板 .gitcode/ISSUE_TEMPLATE/experience-request.yml,并按 GE 仓库定位定制:模板描述与"体验活动所处阶段"选项面向图编译/执行场景(模型转换与图编译、模型加载与执行、问题调试、性能调优等)。 2. build.sh 与 tests/run_test.sh 的 check_changed_files 增加 .gitcode/ 目录过滤:当 -f 修改文件清单仅涉及 .gitcode/、.claude/、.opencode/ 等目录时跳过编译/测试(与已有 .claude/、.opencode/ 过滤行为保持一致)。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue 无 ## 如何测试 描述测试此变更的步骤和前提条件: 1. 准备仅含 .gitcode/、.claude/、.opencode/ 路径的修改清单文件,执行 bash build.sh -f <清单文件>,输出 skipping build 并退出(exit 200),不进行编译 2. 清单中混有源码路径(如 base/xx.cc)时,正常进入编译流程 3. tests/run_test.sh -f <清单文件> 行为同上(skipping test) 4. 已本地验证:bash -n 语法检查通过;check_changed_files 函数在"仅隐藏目录/混合源码/空清单"三种场景下行为均符合预期;yml 通过 YAML 语法校验 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 无 See merge request: cann/ge!5172 | 1 month ago | |
Initial commit | 10 months ago | |
hccl_engine UT/ST接入门禁流水线并修复线上ut/st测试问题 | 30 days ago | |
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 months ago | |
fix: update GE version to 9.2.0 Co-authored-by: yelongjian<yelongjian1@huawei.com> # message auto-generated for no-merge-commit merge: !4199 merge fix-ge-version-9.2.0 into develop fix: update GE version to 9.2.0 Created-by: yelongjian Commit-by: yelongjian Merged-by: cann-robot Description: Updates the GE package versions and build dependencies to 9.2. See merge request: cann/ge!4199 | 3 months ago |
GE (Graph Engine)
English | 简体中文
Latest News
- [2026/03] Continuously enhanced graph optimization capabilities, improved unit test coverage, and fixed compilation issues in multiple edge cases. Optimized documentation structure to enhance developer experience.
- [2026/02] Optimized auto-fusion and broadcast scenario support, added BF16 data type support. Enhanced HostCPU engine capabilities, optimized session creation and destruction lock mechanism. Fixed bugs in external weight and thread loading scenarios. Supported Reduce axis splitting Store address conflict penalty to improve operator fusion effects.
- [2026/01] GE project first release, open-sourced graph compiler and executor, supporting PyTorch and TensorFlow frontend integration and ONNX and PB model format parsing and compilation.
Overview
GE (Graph Engine) is a graph compiler and executor for Ascend, providing computation graph optimization, multi-stream parallelism, memory reuse, and model sinking technologies to accelerate model execution efficiency and reduce model memory footprint.
GE provides friendly integration capabilities for PyTorch and TensorFlow frontends, and simultaneously supports parsing and compilation of mainstream model formats such as onnx and pb. See Ascend Community Documentation - Graph Mode Development Guide.

Quick Start
To quickly experience GE's working methods and basic development process, refer to the following documentation:
- Build Verification: Introduces the complete build process of components and test case execution flow.
- Quick Start: Using ResNet50 model as an example, introduces how to use the ATC tool for model conversion and execute inference on Ascend AI processors.
- Quick Start-LLM: Using Qwen model as an example, introduces how to use the ATC tool for LLM model conversion and implement LLM model loading, execution, and result retrieval.
Documentation
To learn how to use GE for model compilation and execution, refer to the Graph Mode Development Guide, technical articles, and other content: GE Reference Materials
To gain a deep understanding of GE's internal design, architecture mechanisms, and development processes, refer to the following documentation:
- GE Architecture Documentation: Introduces core components, execution flows, optimization mechanisms, and other internal principles.
- Contributing Guide: Explains how to submit Issues, Pull Requests, and code standards.
- AI Agent Support: Introduces some default skills used in the repository and using agents to assist the development process.
Ecosystem Integration
The following projects have integrated GE as an inference or graph mode backend:
- TorchAir: Integrates GE into PyTorch graph mode. Link
- TFA (TensorFlow Adapter): Uses GE as TensorFlow's backend. Link
- JittorInfer: Large model C++ inference framework based on Ascend chips. Link
- Triton GE Backend: GE's Triton Inference Server backend. Link
- MindSpore Lite: Uses GE as MindSpore Lite's backend. Link
Note: The above list shows known and publicly disclosed integration cases, not a complete list. If you are using GE, welcome to supplement through Issues or Pull Requests, and we will continuously update relevant information.
Other Information
Contact Us

Introduction
GE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。
Customize your domain