GE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
test: add om2 abi compatibility guard Co-authored-by: zhangfan_hq<tonhi.zhangfan@huawei.com> # message auto-generated for no-merge-commit merge: !4931 merge feat/om2-abi-compat-guard-clean into develop test: add om2 abi compatibility guard Created-by: zhangfan_hanq Commit-by: zhangfan_hq Merged-by: cann-robot Description: # Pull Request ## 描述 为 OM2 SO 与 Executor 的 C ABI 增加兼容规则、跨代理开发 skill,以及累计式结构体布局和枚举取值兼容性 UT。 ## 变更类型 - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的变动) - [x] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue 无。 ## 如何测试 1. 独立编译并运行 Om2AbiStructCompatibility.*:Om2AbiEnumCompatibility.*,11/11 通过。 2. 对本次变更执行 pre-commit,全部通过。 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:、fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 无。 See merge request: cann/ge!4931 | 4 天前 | |
!4674 merge master into master 【PR】: 简要描述 update actions Created-by: wangyunxiang1 Commit-by: wangyunxiang 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!4674 | 16 天前 | |
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 | 2 个月前 | |
fix: 清理clean code告警 Co-authored-by: likun104<likun104@h-partners.com> # message auto-generated for no-merge-commit merge: !4805 merge br_fix_clean_code_0908 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!4805 | 3 天前 | |
自动融合conv调用act_conv | 1 天前 | |
feat: 补充Python自定义算子多版本构建与fallback codegen能力 Co-authored-by: du-hua1024<duhua2@huawei.com> # message auto-generated for no-merge-commit merge: !4767 merge op into develop feat: 补充Python自定义算子多版本构建与fallback codegen能力 Created-by: du-hua1024 Commit-by: du-hua1024 Merged-by: cann-robot Description: # Pull Request ## 描述 本 PR 为 Python 自定义算子(custom op)补齐**多版本构建**与**运行时 fallback codegen** 能力,并统一 pass/runtime/custom_op 三组件的 native artifact 加载机制: **1. Python custom op 多版本构建能力** - build_python_native_matrix.py 泛化为组件化矩阵构建(--component custom_op),复用共享的 Python 探测(PATH/conda、cp39–cp314)、按版本重编译与 wheel 打包逻辑 - CMake 侧新增 custom_op native wheel target、矩阵构建 target 及组件配置(ge_python_write_native_build_config)生成 - 打包脚本(custom_postinst/prerm、ge-compiler_custom_install/uninstall)支持按当前解释器版本安装匹配的 ge_py_custom_op_bridge wheel,并安装到用户 site-packages **2. Python custom op fallback codegen 能力** - gen_fallback_resources.py 组件化:支持 --component pass/runtime/custom_op、--link-python/--no-link-python、bridge/native target 参数化及依赖头文件按原目录层级摆位(nested_subdir) - C++ 侧 bridge loader(python_custom_op_bridge_loader.cc、python_pass_bridge_loader.cc、python_fallback_codegen_helper.h)支持现场编译回退 - 统一共享层:ge/_internal/native_loader.py(新增,加载决策:sys.modules 缓存 → manifest 校验的预置 artifact → fallback codegen → 失败原因聚合诊断);ge/_internal/fallback_runtime.py 以 pass 原版实现为基座承载三组件的公共编译引擎(参数化 abi_key/artifacts/link_python) - 三组件(pass/runtime/custom_op)统一只接受通过 manifest 校验(Python tag、平台 tag、ABI)的 artifact,不再支持无校验的包内裸 import ## 变更类型 - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue ## 如何测试 1. 全量 UT、ST passed 2. example不受Python版本限制 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 - 加载语义变更说明:runtime/custom_op 不再尝试包内无校验的 import_module 路径,统一走 manifest 校验,避免加载不匹配版本导致符号崩溃;开发态请使用 artifacts 目录或 fallback codegen - ge_py_install/.installed 测试安装目录的 make 规则无文件级依赖,增量构建时不会自动重装(已在本地验证时通过删除标记规避),后续可单独修复 See merge request: cann/ge!4767 | 9 天前 | |
自动融合conv调用act_conv | 1 天前 | |
fix: 修复dflow日志文案语法错误、级别措辞及度量单位缺失问题 Co-authored-by: lining23666<lining.li@huawei.com> # message auto-generated for no-merge-commit merge: !4972 merge fix/dflow-log-text into develop fix: 修复dflow日志文案语法错误、级别措辞及度量单位缺失问题 Created-by: lining23666 Commit-by: lining23666 Merged-by: cann-robot Description: # Pull Request ## 描述 修复日志扫描发现的 dflow 模块 7 处日志/文案问题: | # | 文件 | 修复内容 | |---|------|---------| | 1 | dflow/deployer/daemon/daemon_service.cc | 错误响应消息语法修正:Not exist client id → Client id does not exist | | 2 | dflow/pydflow/python/dataflow/plugin/torch/torch_plugin.py | 删除 _dynamo_export 循环内调试 print 残留 | | 3 | dflow/runner/compiler/model/flow_model_cache.cc | GELOGI 文案措辞调整:Failed to match cache → Cache not matched(缓存 miss 属正常场景,保留 INFO 级避免告警噪音) | | 4 | dflow/llm_datadist/v1/common/llm_flow_service.cc | Feed timeout 日志补充 us 单位(与 link_manager.cc 同款文案对齐) | | 5 | dflow/deployer/deploy/deployer/deploy_context.cc | timeout=%d 补充 ms 单位 | | 6 | dflow/deployer/executor/dynamic_model_executor.cc | timeout=%d 补充 ms 单位 | | 7 | dflow/deployer/executor/cpu_sched_model_builder.cc | timeout:%d 补充 ms 单位 | 均为纯文案修改,不涉及逻辑变更。 ## 变更类型 - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue ## 如何测试 1. 本地 pre-commit 检查(codespell、clang-format、ruff、end-of-file-fixer 等)全部 Passed 2. python3 -m py_compile 校验修改后的 Python 文件通过 3. 纯日志文案修改,无逻辑变更,无需功能测试 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 日志扫描报告来源:scan-log report_0915 ge-dflow_findings.jsonl(7 条发现全部核实为真实问题后修复)。 See merge request: cann/ge!4972 | 3 天前 | |
docs: 新增 ONNX Plugin Python API 参考文档 Co-authored-by: gentle-knight<3045324663@qq.com> # message auto-generated for no-merge-commit merge: !4963 merge docs/onnx-plugin-python-api into develop docs: 新增 ONNX Plugin Python API 参考文档 Created-by: gentle-knight Commit-by: gentle-knight Merged-by: cann-robot Description: # Pull Request ## 描述 新增 ONNX Plugin 转 IR Python 化链路的 API 参考文档: - 新增 ge.onnx_plugin 模块文档 12 篇:onnx_plugin() 工厂函数、OnnxPlugin descriptor(parse_node/parse_operator/decompose 三类回调)、OnnxNode 只读值对象(name/origin_type/inputs/outputs/attrs)及模块简介(含插件部署语义)。 - 新增 ge.graph.Operator 文档 10 篇:算子属性读写(get_attr/set_attr)与端口注册(register_input/register_optional_input/register_output/register_dynamic_input/register_dynamic_output)。 - README 补齐 25 条索引,新增 3 个类入口页。 文档关键约束均与源码逐条核对:parse_operator 与 parse_node 同阶段二选一(前者优先)、source 算子只读语义、attribute JSON 序列化字段形态(标量 f 为 %g 字符串、列表为原生数值的不对称)、attrs 整体读取的复合类型限制、graph-only 场景约束、set_attr 不做属性名校验等。 ## 变更类型 - [x] 📝 文档内容更新 ## 关联的Issue 无 ## 如何测试 纯文档变更,无代码逻辑修改。已完成的验证: 1. 26 个文件内部全部相对链接有效性检查(0 断链),README 索引条目与磁盘文件一一对应; 2. 全部 7 个 Python 示例代码块 ast.parse 语法校验通过,import 齐全、变量均有定义; 3. pre-commit 等价检查通过(trailing-whitespace / end-of-file / merge-conflict / private-key / 拼写);本地 pre-commit 环境损坏(virtualenv segfault),已按 hook 语义逐项人工执行。 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 - 单 commit 交付(文档初版与评审修复合并),基于 0fa3324a9(upstream develop 历史内)切出。 - 文档经过三轮独立评审迭代(API 完备性、源码一致性、新用户可读性),全部实质问题已闭环。 See merge request: cann/ge!4963 | 2 天前 | |
feat: 新增 PyPTO 算子 GE 入图样例 Co-authored-by: lfz2812<2842778284@qq.com> # message auto-generated for no-merge-commit merge: !4797 merge pypto_try into develop feat: 新增 PyPTO 算子 GE 入图样例 Created-by: lfz2812 Commit-by: lfz2812 Merged-by: cann-robot Description: # Pull Request ## 描述 新增 pypto_add_custom 样例,把 PyPTO JIT kernel 通过 Python 自定义算子接入 GE 图执行。 主要变更: - 使用 @register_op 注册 PyptoAddCustom 原型与 infer_meta,@register_op_impl 注册 schema-bound execute(x, y) 实现。 - execute 回调通过 GE EagerOpExecutionContext 申请输出 Tensor,把输入/输出 device 地址经 torchair create_npu_tensors 零拷贝包装为 torch Tensor,再执行 @pypto.jit Add kernel。 - PyPTO kernel 由 src/run.py 在 GE 初始化前于主线程预热编译,execute 回调只消费进程内编译缓存(GE 回调内触发 JIT 编译会因编译器子进程与 GE 运行时冲突而挂起)。 - 通过 ge.exec.static_model_ops_lower_limit=-1 强制 RT2 动态执行路径,使 execute 回调在每次图执行时被调用(默认静态路径下回调仅在任务生成阶段执行一次,与 PyPTO 即时启动模型不兼容)。 - execute 以设备同步保证输入/输出数据可见性,100 轮计时约 3-4 ms/iter。 - README 中英文双语说明 PyPTO 支持现状:仅支持 JIT 直接执行,无独立编译接口和 binary 导出接口,无法预编译为 kernel binary 或转换为 AnnotatedArgs 的 kernel_bin;Python execute 回调 + torchair 桥接是当前 PyPTO 接入 GE 的可行路径。 - examples/custom_op/README.md 与 README_en.md 总览表同步登记新样例。 ## 变更类型 - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue 无。 ## 如何测试 静态检查: bash python3 -m py_compile examples/custom_op/pypto_add_custom/src/*.py examples/custom_op/pypto_add_custom/src/ge/*.py bash -n examples/custom_op/pypto_add_custom/run.sh git diff --check 已对全部变更文件执行 pre-commit(ruff/codespell/clang-format/OAT 等),全部通过。 NPU 环境验收(CANN 9.2.0 + Atlas A2): bash source ${ASCEND_HOME_PATH}/set_env.sh cd examples/custom_op/pypto_add_custom bash run.sh 实测输出: text [OnlinePython] PyPTO kernel warm-up PASS [OnlinePython] PyptoAddCustom precision check PASS [Perf] input shape: [8192], dtype: float32 [Perf] iters: 100 [Perf] PyptoAddCustom: 371476 us (avg 3714 us/iter) [OnlinePython] NPU_EXECUTION=PASS [INFO] Online Python PyPTO custom-op pipeline PASS ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 - PyPTO JIT 编译产物(output/ 下 program.json、dy_kernel_*.o 等)为进程内部缓存,未纳入版本管理。 - Python 导入顺序要求 import torch / import torch_npu 在 import pypto 之前,否则可能触发 libc10.so 静态 TLS 报错,README 已注明。 - torchair 桥接优先使用公开 torchair.llm_datadist.create_npu_tensors;torchair 包初始化失败的环境自动降级为直接加载其 C++ 扩展。 - execute 回调的单轮耗时(约 3-4 ms)高于 Ascend C + AnnotatedArgs 路径(约 0.4 ms,参考 annotated_args_refresh_add_custom):开销来自设备同步与 Python 回调,本样例聚焦链路打通而非性能。 - 如需声明式地址刷新或 om 模型下沉,请参考 annotated_args_refresh_add_custom 等基于 Ascend C 的样例。 See merge request: cann/ge!4797 | 2 天前 | |
fix:tiny1911 执行报错无法找到符号 Co-authored-by: Chang-an-HW<machangan@huawei.com> # message auto-generated for no-merge-commit merge: !4939 merge fix_tiny1911_OpProtoLedger into develop fix:tiny1911 执行报错无法找到符号 Created-by: Chang-an-HW Commit-by: Chang-an-HW Merged-by: cann-robot Description: # Pull Request ## 描述 新增了 OpProtoLedger 的 stub 实现文件 graph_metadef/graph/stub/stub_op_proto_ledger.cc,为 ge 命名空间下的 OpProtoLedger 类及其辅助类 ScopedOpProtoLoadTxn 提供桩实现,用于在不包含完整实现的环境中满足编译/链接需求,解决tiny1911 执行报错无法找到符号 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!4939 | 2 天前 | |
fix:消除静态告警 Co-authored-by: Chang-an-HW<machangan@huawei.com> # message auto-generated for no-merge-commit merge: !4992 merge fix_warning_0916 into develop fix:消除静态告警 Created-by: Chang-an-HW Commit-by: Chang-an-HW Merged-by: cann-robot Description: # Pull Request ## 描述 fix:消除静态告警 析构函数不得抛出异常 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!4992 | 2 天前 | |
fix: 清理clean code告警 Co-authored-by: likun104<likun104@h-partners.com> # message auto-generated for no-merge-commit merge: !4805 merge br_fix_clean_code_0908 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!4805 | 3 天前 | |
【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 | 2 个月前 | |
【feat】:OM2静态图在线场景支持刷新FeatureMap Co-authored-by: wang-bin-789<wangbin153@huawei.com> # message auto-generated for no-merge-commit merge: !4980 merge develop_fm_20260916 into develop 【feat】:OM2静态图在线场景支持刷新FeatureMap Created-by: wang-bin-789 Commit-by: wang-bin-789 Merged-by: cann-robot Description: # Pull Request ## 描述 本 PR 为 OM2 模型运行时新增了 FeatureMap 内存基址刷新能力:在代码生成侧新增 Om2ArgsTable::RefreshFeatureMap、Om2Model::RefreshFeatureMap 及稳定代码片段 GertModelRefreshFeatureMap,并对外暴露 GertModelRefreshFeatureMap 公共接口;运行时侧打通 ModelExecutor::UpdateFeatureMemoryBase → Om2ModelManager::UpdateFeatureMemoryBase → Om2ModelExecutor::UpdateFmMemBases 的调用链(OM2 在线模式此前直接返回不支持)。同时将参数表数组由 4 个缩减为 3 个(sqe 合并到 hbm),新增 args_types_ 记录参数放置类型并在分配时改用 AclrtMallocHelper,CopyArgsToDevice 也改为遍历全部参数逐项拷贝。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!4980 | 2 天前 | |
feat: 补充Python自定义算子多版本构建与fallback codegen能力 Co-authored-by: du-hua1024<duhua2@huawei.com> # message auto-generated for no-merge-commit merge: !4767 merge op into develop feat: 补充Python自定义算子多版本构建与fallback codegen能力 Created-by: du-hua1024 Commit-by: du-hua1024 Merged-by: cann-robot Description: # Pull Request ## 描述 本 PR 为 Python 自定义算子(custom op)补齐**多版本构建**与**运行时 fallback codegen** 能力,并统一 pass/runtime/custom_op 三组件的 native artifact 加载机制: **1. Python custom op 多版本构建能力** - build_python_native_matrix.py 泛化为组件化矩阵构建(--component custom_op),复用共享的 Python 探测(PATH/conda、cp39–cp314)、按版本重编译与 wheel 打包逻辑 - CMake 侧新增 custom_op native wheel target、矩阵构建 target 及组件配置(ge_python_write_native_build_config)生成 - 打包脚本(custom_postinst/prerm、ge-compiler_custom_install/uninstall)支持按当前解释器版本安装匹配的 ge_py_custom_op_bridge wheel,并安装到用户 site-packages **2. Python custom op fallback codegen 能力** - gen_fallback_resources.py 组件化:支持 --component pass/runtime/custom_op、--link-python/--no-link-python、bridge/native target 参数化及依赖头文件按原目录层级摆位(nested_subdir) - C++ 侧 bridge loader(python_custom_op_bridge_loader.cc、python_pass_bridge_loader.cc、python_fallback_codegen_helper.h)支持现场编译回退 - 统一共享层:ge/_internal/native_loader.py(新增,加载决策:sys.modules 缓存 → manifest 校验的预置 artifact → fallback codegen → 失败原因聚合诊断);ge/_internal/fallback_runtime.py 以 pass 原版实现为基座承载三组件的公共编译引擎(参数化 abi_key/artifacts/link_python) - 三组件(pass/runtime/custom_op)统一只接受通过 manifest 校验(Python tag、平台 tag、ABI)的 artifact,不再支持无校验的包内裸 import ## 变更类型 - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue ## 如何测试 1. 全量 UT、ST passed 2. example不受Python版本限制 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 - 加载语义变更说明:runtime/custom_op 不再尝试包内无校验的 import_module 路径,统一走 manifest 校验,避免加载不匹配版本导致符号崩溃;开发态请使用 artifacts 目录或 fallback codegen - ge_py_install/.installed 测试安装目录的 make 规则无文件级依赖,增量构建时不会自动重装(已在本地验证时通过删除标记规避),后续可单独修复 See merge request: cann/ge!4767 | 9 天前 | |
自动融合conv调用act_conv | 1 天前 | |
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 | 2 个月前 | |
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 | 2 个月前 | |
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 | 1 个月前 | |
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 | 16 天前 | |
test: add om2 abi compatibility guard Co-authored-by: zhangfan_hq<tonhi.zhangfan@huawei.com> # message auto-generated for no-merge-commit merge: !4931 merge feat/om2-abi-compat-guard-clean into develop test: add om2 abi compatibility guard Created-by: zhangfan_hanq Commit-by: zhangfan_hq Merged-by: cann-robot Description: # Pull Request ## 描述 为 OM2 SO 与 Executor 的 C ABI 增加兼容规则、跨代理开发 skill,以及累计式结构体布局和枚举取值兼容性 UT。 ## 变更类型 - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的变动) - [x] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue 无。 ## 如何测试 1. 独立编译并运行 Om2AbiStructCompatibility.*:Om2AbiEnumCompatibility.*,11/11 通过。 2. 对本次变更执行 pre-commit,全部通过。 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:、fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 无。 See merge request: cann/ge!4931 | 4 天前 | |
feat: 新增 cann-pr-log-check skill,支持对 PR 改动文件一键日志规范检查 Co-authored-by: liyanrong9<liyanrong9@h-partners.com> # message auto-generated for no-merge-commit merge: !4721 merge log_skill_0903 into develop feat: 新增 cann-pr-log-check skill,支持对 PR 改动文件一键日志规范检查 Created-by: liyanrong_9 Commit-by: liyanrong9 Merged-by: cann-robot Description: # Pull Request ## 描述 新增 cann-pr-log-check skill,开发人员提交 PR 后,可一键对变更文件中的日志语句进行日志规范全量检查。规则始终从 cann-log-evaluation 远程拉取最新版本,不本地缓存,确保规则更新后即时生效。检查完成后输出 Markdown 表格和 Excel 报告(带严重级配色和筛选)。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 本地agent调用此skill对PR日志进行检查。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!4721 | 10 天前 | |
fix: 修复arm环境下llt编译问题 Co-authored-by: yelongjian<yelongjian1@huawei.com> # message auto-generated for no-merge-commit merge: !4610 merge dev-llt0828 into develop fix: 修复arm环境下llt编译问题 Created-by: yelongjian Commit-by: yelongjian Merged-by: cann-robot Description: 环境 A:Linux arm 环境B:Debian arm | 序号 | 测试分组 | 问题 | 影响环境 | 失败/卡住用例 | 主要现象 | 处理方式 | | --- | --- | --- | --- | --- | --- | --- | | 1 | ge_common | HostCPU JIT 编译 | A、B | HostCpuFusionPassTest.CompilesGeneratedSourceAndRejectsInvalidSource | ARM 调用 x86_64-linux-gnu-g++,退出码 127 | **已处理,已验证**:ARM64 跳过 | | 2 | ge_common | Eager 历史代码生成 | A | EsMainUt.ExecuteGeneration_ExtractHistoryWithEmptyVersion | asc_dumper 运行时 abort,曾报 libunified_dlog.so 加载失败 | **已处理,已验证**:ARM64 跳过 | | 3 | ge_rt | DVPP SQE Launch Mock | A、B | generate_sqe_and_launch_task_001~006 | 测试卡住或 CTest 超时 | **已处理,已验证**:ARM64 跳过 6 个 | | 4 | ge_rt | DVPP Workspace Mock | A、B | CalcOpWorkSpaceSize_001~003 | stack smashing detected,进程 abort | **已处理,已验证**:ARM64 跳过 3 个 | | 5 | ge_common | OpsKernelBuilderRegistry 泄漏 | A、B | IncCov_DestructorUnregisterWarning_Test | ASAN 报告 16 字节泄漏,导致 ut_register 失败 | **已处理,已验证**:ARM64 跳过 | | 6 | dflow | libge_runner_v2.so 符号缺失 | A、B | ut_libge_helper_utest、ut_llm_engine_utest | 动态链接时报 undefined symbol: SymbolicInferUtil::GetValueDependentInputIdxs | **已处理,已验证**:DFlow CTest 前补建相关目标,A、B 均不再复现 | | 7 | dflow | FunctionCompile 测试资源类型未适配 ARM | A、B | FunctionCompileTest.FunctionPpCompile、FunctionCompileTest.CompileAllResourceTypeFailed | ARM 实际使用 {Ascend, Aarch},测试硬编码 {Ascend, X86} | **已处理,已验证**:ARM64 跳过两个用例 | | 8 | 构建 | protobuf 生成头文件依赖缺失 | A、B | AIR 的 select_targets 构建 | 重新编译 fe_gentask_utils.cc 时找不到 proto/task.pb.h | **已处理,已验证**:在 tests/engines/CMakeLists.txt 中仅对 Engine LLT 的 aicore_utils 补充 graphengine_protos 依赖和头文件路径 | | 9 | 构建 | CMake 增量重配置未加载 CANN CMake 函数 | A、B | tests/run_test.sh --ut 的 build_ut 配置 | 第二次 cmake .. 时 generate_cann_protobuf 未定义 | **已处理,已验证**:不修改全局 fetch_cann_cmake.cmake;新版本 CMake 使用 --fresh,旧版本仅清理 CMakeCache.txt 和 CMakeFiles 后重新配置 | | 10 | 构建 | AIR aicore_utils 链接库路径缺失 | A、B | AIR 的 aicore_utils | -lgraph、-lregister 无法解析 | **已处理,已验证**:显式解析 toolkit 库路径 | | 11 | ge_common | RangeAxis UT 使用未初始化 c0 | B | 5 个 RANGE_AXIS_UTIL_UTEST 用例 | 未初始化 c0 在 B 上为 0 | **已处理,已验证**:初始化 c0 = 1 | | 12 | ge_common | ModelHelper ARM64 运行时崩溃 | B | UtestModelHelperMisc.CheckOsCpuInfoAndOppVersion_NeedCheck | asc_dumper 缺少依赖后触发 ASAN SEGV | **已处理,已验证**:ARM64 跳过 | | 13 | T.E. Fusion | 多个 AIR 目标链接库缺失 | A、B | T.E. Fusion AIR 构建中的多个目标 | -lgraph_base、-llowering、-lgraph 等链接错误 | **已处理,已验证**:B 独立拷贝 302 个 UT 全部通过,已恢复默认执行 | | 14 | CPU Engine UT | 测试 stub/用例定义未同步 | A、B | CPU Engine UT 编译和链接 | stub 常量、命名空间及 ACL/AICPU 符号缺失 | **已处理,已验证**:本地 13/98/113 个测试分别通过,修改已同步 A、B | | 15 | FFTS UT | 测试变量拼写错误 | A、B | ffts_ut 编译 | nofity 未声明 | **已处理,已验证**:修正为 notify | | 16 | FFTS UT | 测试访问空任务导致 core dump | A、B | 4 个任务生成用例 | tasks 为空时访问 tasks[0] | **已处理,已验证**:统一跳过 4 个用例 | | 17 | FFTS UT | ARM 任务生成/校验用例断言失败 | A、B | 10 个任务生成/校验用例 | 实际返回值与测试期望不一致 | **已处理,已验证**:ARM64 跳过 10 个用例 | | 18 | FFTS UT | 非法插件句柄导致 core dump | A、B | PluginManagerUTEST.Close_Handle_Fail_2 | 对栈变量地址调用 dlclose 触发 SIGSEGV | **已处理,已验证**:ARM64 跳过 | | 19 | LLT 构建流程 | 测试阶段误进入发布包安装 | A、B | build_fwk.sh、scripts/build.sh 的 LLT 构建 | package 规则检查不存在的 target | **已处理,已验证**:LLT 不执行安装,CMake 不加载 package 规则 | | 20 | RTS UT | 测试 CMake 源文件、目标依赖及运行库路径未随构建模式调整 | A、B | rts_engine_utest 配置、编译和执行 | 旧源码路径、运行时声明、select_targets 依赖及 Release 运行时 gtest 路径缺失 | **已处理,已验证**:更新 RTS UT 源文件和头文件路径,补充 rts_ut 目标依赖及 gtest rpath;本地清理 build/ 后 67 个用例中 66 个通过、1 个跳过 | | 21 | RTS UT | CmoAddr 用例依赖环境 Chip type | A、B | RtsEngineOpTest.CmoAddrOpTest | 返回环境相关错误码 507008,与固定期望不一致 | **已处理,已验证**:全架构跳过,本地 67 个用例中 66 个通过、1 个跳过 | | 22 | RTS UT | MemcpyAsyncOp.Notiling_01 未设置运行时数据内存容量 | A | MemcpyAsyncOp.Notiling_01 | tensor size 为 512、runtime descriptor size 为 1024,offset 均为 1,但 dataMemSize 不足,输入或 descriptor 地址范围校验失败 | **已处理,已本地验证**:值初始化 RunContext 并设置 dataMemSize = 1025;本地 RTS UT 66 个通过、1 个跳过,Notiling_01 通过 | | 23 | HCCE UT/ST 流程 | HCCE 测试代码与当前 HCCL API 版本不兼容 | A、B | hccl_engine_utest、hccl_engine_stest | 测试接口、mock 签名及 runtime stub 与当前实现不一致,无法完成编译 | **当前规避**:从 tests/run_test.sh 全量 UT/ST 流程中注释 HCCE 构建与执行 | See merge request: cann/ge!4610 | 20 天前 | |
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 | 23 天前 | |
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 | 23 天前 | |
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 | 2 个月前 | |
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 | 2 个月前 | |
【PR】: 新增中英文跳转链接 Co-authored-by: sophia1213<sophie.chen@huawei.com> # message auto-generated for no-merge-commit merge: !4750 merge develop into develop 【PR】: 新增中英文跳转链接 Created-by: sophia1213 Commit-by: sophia1213 Merged-by: cann-robot Description: # Pull Request ## 描述 RAEDME以及一级文件夹根目录添加中英文跳转链接。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue 不涉及 ## 如何测试 根据最新资料进行测试 ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!4750 | 11 天前 | |
【PR】: 新增中英文跳转链接 Co-authored-by: sophia1213<sophie.chen@huawei.com> # message auto-generated for no-merge-commit merge: !4750 merge develop into develop 【PR】: 新增中英文跳转链接 Created-by: sophia1213 Commit-by: sophia1213 Merged-by: cann-robot Description: # Pull Request ## 描述 RAEDME以及一级文件夹根目录添加中英文跳转链接。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue 不涉及 ## 如何测试 根据最新资料进行测试 ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!4750 | 11 天前 | |
【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 | 1 个月前 | |
【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 | 1 个月前 | |
【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 | 1 个月前 | |
【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 | 1 个月前 | |
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 | 1 个月前 | |
refactor: unify CXX11 ABI configuration Co-authored-by: yelongjian<yelongjian1@huawei.com> # message auto-generated for no-merge-commit merge: !4540 merge dev-abi0825 into develop refactor: unify CXX11 ABI configuration Created-by: yelongjian Commit-by: yelongjian Merged-by: cann-robot Description: # Pull Request ## 描述 ABI参数设置收归cann-cmake ## 变更类型 请选择本次引入的变更类型: <!-- [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!4540 | 24 天前 | |
Initial commit | 8 个月前 | |
【PR】: sync master to develop 20260723 Co-authored-by: Archerls<wuhuiyang3@huawei.com> Co-authored-by: jiang-mingming01<jiangmingming16@h-partners.com> Co-authored-by: Feiteng Zheng<zhengfeiteng1@h-partners.com> Co-authored-by: liangxuheng<741015122@qq.com> Co-authored-by: du-hua1024<duhua2@huawei.com> # message auto-generated for no-merge-commit merge: !4121 merge master into develop 【PR】: sync master to develop 20260723 Created-by: zhanj Commit-by: zhanj;zhengfeiteng;Feiteng Zheng;jiang-mingming01;Chang-an-HW;yangyongqiang0606;du-hua1024;liangxuheng;Archerls;jikai-tyler Merged-by: cann-robot Description: # Pull Request ## 描述 sync master to develop 20260723 ## 变更类型 请选择本次引入的变更类型: <!-- [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!4121 | 1 个月前 | |
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 | 2 个月前 | |
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 | 1 个月前 |
GE(Graph Engine 图引擎)
简体中文 | English
🔥 Latest News
- [2026/03] 持续增强图优化能力,完善单元测试覆盖,修复多个边缘场景的编译问题;优化文档结构,提升开发者体验。
- [2026/02] 优化自动融合与广播场景支持,新增 BF16 数据类型支持;增强 HostCPU 引擎能力,优化 session 创建销毁锁机制;修复外置权重、线程加载等场景下的 bug;支持 Reduce 分核轴 Store 地址冲突惩罚,提升算子融合效果。
- [2026/01] GE 项目首次上线,开源图编译器和执行器,支持 PyTorch、TensorFlow 前端接入以及 ONNX、PB 模型格式解析与编译。
🚀 概述
GE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。详见昇腾社区文档-图模式开发指南。

⚡️ 快速入门
若希望快速体验 GE 的工作方式及基本开发流程,可参考以下文档:
- 构建验证:介绍组件的完整构建、测试样例运行流程。
- 快速开始:以 ResNet50 模型为例,介绍如何使用 ATC 工具进行模型转换,并在昇腾 AI 处理器上执行推理。
- 快速开始-LLM:以 Qwen 模型为例,介绍如何使用 ATC 工具进行LLM模型转换,并实现LLM模型的加载、执行和获取执行结果等。
📚 文档
如需了解如何使用 GE 进行模型编译与执行,可参见图模式开发指南、技术文章等内容: GE 参考资料
如果希望深入了解 GE 的内部设计、架构机制与开发流程,可参考以下文档:
- GE 架构说明文档:介绍核心组件、执行流程、优化机制等内部原理。
- 贡献指南:说明如何提交 Issue、Pull Request 以及代码规范。
- AI Agent支持:介绍仓内默认使用的一些skills及使用agent辅助开发流程
🌐 生态集成
以下项目已集成 GE 作为推理或图模式后端:
- TorchAir:将 GE 接入 PyTorch 图模式。链接
- TFA(TensorFlow Adapter):将 GE 作为 TensorFlow 后端。链接
- JittorInfer:基于昇腾芯片的大模型 C++ 推理框架。链接
- Triton GE Backend:GE 的 Triton Inference Server 后端。链接
- MindSpore Lite: 将 GE 作为 MindSpore Lite 后端。 链接
说明: 上述列表为已知并对外公开的集成案例,并非完整清单。 若您正在使用 GE,欢迎通过 Issue 或 PR 补充,我们将持续更新相关信息。
📝 其他信息
📝 联系我们
