| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
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 | 25 天前 | |
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 | 25 天前 | |
【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 | 27 天前 | |
【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 | 27 天前 |
项目文档
简体中文 | English
目录结构
└── zh
├── api/ # API参考文档
├── contributions/ # 开发规范与指南
├── design/ # 设计文档
├── figures/ # 图片资源
├── user_guides/ # 用户指南
├── build.md # 源码构建
└── quick_install.md # 环境部署