| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[chore]: Support Q2 building optimization - Move the top-level CMakeLists.txt for udf_device to cmake/device. Co-authored-by: zhuhaoran5<zhuhaoran5@huawei.com> # message auto-generated for no-merge-commit merge: !1994 merge support_Q2_building_optimization into develop 【chore】: 支持Q2工程优化 Created-by: zhuhaoran5 Commit-by: zhuhaoran5 Merged-by: cann-robot Description: # Pull Request ## 描述 支持Q2组件工程优化: device侧构建入口统一到cmake/device/CMakeLists.txt ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 按照 README 部署构建环境 执行所有构建场景的脚本命令,能执行成功并且产物包内容与先前一致 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!1994 | 6 个月前 | |
[PR]fix: create stub_lib to resolve CMake RPATH warnings Co-authored-by: wangyuchen<wangyuchen38@huawei.com> # message auto-generated for no-merge-commit merge: !1633 merge fix/cmake_warning into develop [PR]fix: create stub_lib to resolve CMake RPATH warnings Created-by: yuchen97 Commit-by: wangyuchen Merged-by: cann-robot Description: # Pull Request ## 描述 **问题** GCOV 模式下构建测试用例时,CMake 产生大量 RPATH 循环约束告警: Cannot generate a safe runtime search path for target ge_runner_v2 because there is a cycle in the constraint graph **原因** ascend_hal_stub 使用 SHARED IMPORTED 并指向 $ASCEND_INSTALL_PATH/devlib/,CMake 自动将该目录加入 RPATH 约束图。而 devlib/ 下存在与项目源码编译同名的库(如 libgert.so、libge_runner_v2.so 等),导致 CMake 无法确定路径优先级,形成循环约束。 **解决方案** 在构建目录创建一个stub_lib的路径,在stub_lib下创建ibascend_hal.so的符号链接,避免 CMake 将 devlib/ 加入自动 RPATH 计算。devlib/libascend_hal.so时符号链接,需要获取**实际指向lib的真实路径**。 修改文件:cmake/modules/Findascend_hal.cmake **影响** - 构建时:消除 CMake RPATH 循环告警,直接链接ascend_hal_stub的桩库 - 运行时:无影响,通过 LD_LIBRARY_PATH 加载 libascend_hal.so - 兼容性:ascend_hal_stub 的使用方式不变(仅构建时保证链接通过),各 CMakeLists.txt 无需修改 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!1633 | 6 个月前 | |
【PR】: 更新三方库下载地址,防止并发限流 Co-authored-by: gcw_UQE6G7Ro<zhoudaijin@huawei.com> # message auto-generated for no-merge-commit merge: !2640 merge develop into develop 【PR】: 更新三方库下载地址,防止并发限流 Created-by: gcw_UQE6G7Ro Commit-by: gcw_UQE6G7Ro Merged-by: cann-robot Description: # Pull Request ## 描述 请清晰准确地描述本次 Pull Request 的意图和变更内容。 更换三方库下载地址,防止并发限流阻塞开发流水线在线编译 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 See merge request: cann/ge!2640 | 5 个月前 | |
Initial commit | 9 个月前 | |
Initial commit | 9 个月前 | |
【PR】: sync ge_dev to master 20260309 Co-authored-by: cann-robot<songchangxia@cann.team> Co-authored-by: tang-haojie<tanghaojie1@huawei.com> Co-authored-by: isaacxu<xurui23@huawei.com> Co-authored-by: yelongjian<yelongjian1@huawei.com> Co-authored-by: kobemini<gengchao4@huawei.com> Co-authored-by: yuchen97<wangyuchen38@huawei.com> Co-authored-by: maohaodi<maohaodi@huawei.com> Co-authored-by: lihuachao<lihuachao1@huawei.com> Co-authored-by: liuyuanchen1<liuyuanchen1@huawei.com> Co-authored-by: KenChow<zhouchen53@huawei.com> Co-authored-by: wtf_newage<liuqiang238@hisilicon.com> Co-authored-by: jin-xiaohang<jinxiaohang4@huawei.com> Co-authored-by: peiyang<lipeiyang@huawei.com> Co-authored-by: wangxiaotian995<710309755@qq.com> # message auto-generated for no-merge-commit merge: !993 merge develop into master 【PR】: sync ge_dev to master 20260309 Created-by: peiyang Commit-by: peiyang;cann-robot;wangxiaotian995;jin-xiaohang;wtf_newage;KenChow;liuyuanchen1;lihuachao;yelongjian;maohaodi;yuchen97;kobemini;isaacxu;tang-haojie Merged-by: zhangfan_hanq Description: # Pull Request ## 描述 本PR指在将develop分支的代码同步合入master分支,包括以下特性: 1、canfuse融合前删除无效轴且清空内部计数 2、fix custom ops path problem 3、优化后端dump图呈现形式 4、修改license描述 5、es 文档更新 6、修复Tiny形态so打包问题 7、解决Tiny形态缺少依赖导致的编译报错 8、统一样例环境准备流程及优化readme内容结构 9、增加装包pip3校验 10、修复sample issue 11、清理acl目录重复头文件 12、ATT性能公式注释及表达式优化 13、generate函数适配历史原型库功能修改 14、合并拷贝使用pin内存 15、Autofuse融合节点名字精简化 16、放开split纵向+横向融合限制 17、GetTensor函数增加判空 18、优化concat分组重计算 19、当concat的对齐值小于等于1时,无意义,跳过这种判断&头文件路径修复 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [x] ✨ 新功能 - [x] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!993 | 7 个月前 | |
Initial commit | 9 个月前 | |
【feat】: Unified compilation options Co-authored-by: tangqunzhang<tangqunzhang@huawei.com> # message auto-generated for no-merge-commit merge: !1331 merge develop into develop 【feat】: Unified compilation options Created-by: tangqunzhang Commit-by: tangqunzhang Merged-by: cann-robot Description: # Pull Request ## 描述 问题/功能描述 本次PR对CMake构建系统进行了统一清理与优化,旨在解决构建配置分散、冗余的问题,并提升构建的灵活性与可维护性。主要工作包括:调整关键CMake模块的包含逻辑以确保其在更广泛的构建上下文中可用;系统性地移除多个子模块中对通用构建配置文件的冗余包含指令;以及简化非测试、非Windows平台下的默认编译选项,移除了强制性的优化级别和将警告视为错误的限制,便于调试。 修改方案描述 具体修改分为三个方面:1) 将intf_pub_linux.cmake文件的包含语句从条件块内移至CMakeLists.txt的全局范围,确保接口定义全局可用。2) 在cmake/build_type.cmake中,将默认编译选项简化为仅保留可见性控制标志,移除了-O2、-Werror等标志。3) 清理了graph_base、graph等多个子目录CMakeLists.txt中冗余的include(build_type.cmake)指令,并将该包含指令统一移至inc/graph_metadef/CMakeLists.txt中,实现了构建配置的集中管理。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 编译选项修改,只需保证版本编译构建成功即可覆盖修改功能。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!1331 | 6 个月前 | |
【PR】: sync ge_dev to master 20260309 Co-authored-by: cann-robot<songchangxia@cann.team> Co-authored-by: tang-haojie<tanghaojie1@huawei.com> Co-authored-by: isaacxu<xurui23@huawei.com> Co-authored-by: yelongjian<yelongjian1@huawei.com> Co-authored-by: kobemini<gengchao4@huawei.com> Co-authored-by: yuchen97<wangyuchen38@huawei.com> Co-authored-by: maohaodi<maohaodi@huawei.com> Co-authored-by: lihuachao<lihuachao1@huawei.com> Co-authored-by: liuyuanchen1<liuyuanchen1@huawei.com> Co-authored-by: KenChow<zhouchen53@huawei.com> Co-authored-by: wtf_newage<liuqiang238@hisilicon.com> Co-authored-by: jin-xiaohang<jinxiaohang4@huawei.com> Co-authored-by: peiyang<lipeiyang@huawei.com> Co-authored-by: wangxiaotian995<710309755@qq.com> # message auto-generated for no-merge-commit merge: !993 merge develop into master 【PR】: sync ge_dev to master 20260309 Created-by: peiyang Commit-by: peiyang;cann-robot;wangxiaotian995;jin-xiaohang;wtf_newage;KenChow;liuyuanchen1;lihuachao;yelongjian;maohaodi;yuchen97;kobemini;isaacxu;tang-haojie Merged-by: zhangfan_hanq Description: # Pull Request ## 描述 本PR指在将develop分支的代码同步合入master分支,包括以下特性: 1、canfuse融合前删除无效轴且清空内部计数 2、fix custom ops path problem 3、优化后端dump图呈现形式 4、修改license描述 5、es 文档更新 6、修复Tiny形态so打包问题 7、解决Tiny形态缺少依赖导致的编译报错 8、统一样例环境准备流程及优化readme内容结构 9、增加装包pip3校验 10、修复sample issue 11、清理acl目录重复头文件 12、ATT性能公式注释及表达式优化 13、generate函数适配历史原型库功能修改 14、合并拷贝使用pin内存 15、Autofuse融合节点名字精简化 16、放开split纵向+横向融合限制 17、GetTensor函数增加判空 18、优化concat分组重计算 19、当concat的对齐值小于等于1时,无意义,跳过这种判断&头文件路径修复 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [x] ✨ 新功能 - [x] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [x] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!993 | 7 个月前 | |
feat: 使用FetchContent复用cann/cmake公共构建框架 Co-authored-by: yitaoxt<yitaoxt@qq.com> # message auto-generated for no-merge-commit merge: !2460 merge develop into develop feat: 使用FetchContent复用cann/cmake公共构建框架 Created-by: yitaoxt Commit-by: yitaoxt Merged-by: cann-robot Description: # Pull Request ## 描述 feat: 使用FetchContent复用cann/cmake公共构建框架 参照runtime d49ff90f的做法,将GE工程内重复的公共构建函数删除, 改用FetchContent从cann/cmake公共仓获取: - 新增 cmake/fetch_cann_cmake.cmake,FetchContent拉取cann/cmake - CMakeLists.txt 添加 init_cann_project() 初始化公共构建环境 - cmake/function.cmake 删除6个公共函数(~89行),由公共仓提供 - version.cmake 重命名为 set_cann_package/set_cann_build_dependencies等 - 删除 scripts/check_build_dependencies.py 和 generate_version_info.py ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 重构构建代码,不对生成的二进制包做任何变动,修改前后生成的run包文件bep一致 2. 蓝区构建通过,回黄构建通过 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!2460 | 5 个月前 | |
【feat】: 将func2graph.py与本地protobuf解耦 Co-authored-by: kantao1<kantao1@huawei.com> # message auto-generated for no-merge-commit merge: !2551 merge decouple_protobuf into develop 【feat】: 将func2graph.py与本地protobuf解耦 Created-by: kantao1 Commit-by: kantao1 Merged-by: cann-robot Description: # Pull Request ## 描述 ### 背景 run包里的脚本 func2graph.py 依赖 protoc 生成的 py 文件,执行时会使用本地环境上的 protobuf。由于 protoc 与 protobuf 之间版本有约束(protoc版本>=protobuf版本),所以在使用 func2graph.py 的时候可能会因为版本问题而失败。 ### 整体介绍 **当前实现:** 1. 通过 protoc 转换生成 graph 相关的 **py** 文件,然后打到 run 包里给 func2graph.py 调用。 2. func2graph.py 直调提供的 py 接口 mermaid flowchart LR A[proto文件] B[py文件] C[run包] D[func2graph.py] A -->|protoc转换| B -->|打包到| C -->|被直调| D <br/> **解耦方案:** 1. 通过 protoc 转换生成 graph 相关的 **cc** 文件,再通过代理提供一套 C接口备用,最后编译得到动态库so,且链接阶段需要链接 protobuf 静态库(执行时就不需要使用本地的protobuf了) 2. 修改 func2graph.py,将原本直调 py 接口的逻辑替换为通过 ctypes 调用 C接口 mermaid flowchart LR A[proto文件] B[cc文件] C[C接口] D[生成动态库] E[run包] F[func2graph.py通过ctypes调用C接口] A -->|protoc转换| B -->|代理| C -->|链接protobuf静态库| D -->|打包到| E -->|被调用| F ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. func2graph.py 脚本使用方式不变 2. func2graph.py 不再依赖本地 protobuf,可删除本地 protobuf 进行验证 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!2551 | 5 个月前 | |
Initial commit | 9 个月前 | |
sync develop to master 20260210 Co-authored-by: cann-robot<songchangxia@cann.team> Co-authored-by: zhang_shengjie<804425610@qq.com> Co-authored-by: kobemini<gengchao4@huawei.com> Co-authored-by: lining23666<lining.li@huawei.com> Co-authored-by: stevenaw0<huangguijun@huawei.com> Co-authored-by: lihuachao<lihuachao1@huawei.com> Co-authored-by: wanghuajie<wanghuajie1@huawei.com> Co-authored-by: yangyongqiang0606<yangyongqiang7@hisilicon.com> Co-authored-by: yelongjian<yelongjian1@huawei.com> Co-authored-by: isaacxu<xurui23@huawei.com> Co-authored-by: du-hua1024<duhua2@huawei.com> Co-authored-by: maohaodi<maohaodi@huawei.com> Co-authored-by: jsong27<songjiaming6@h-partners.com> # message auto-generated for no-merge-commit merge: !571 merge develop into master sync develop to master 20260210 Created-by: depeng1994 Commit-by: cann-robot;jsong27;maohaodi;du-hua1024;zhang_shengjie;isaacxu;yelongjian;yangyongqiang0606;wanghuajie;lihuachao;stevenaw0;lining23666;kobemini Merged-by: wqtshg_wt Description: # Pull Request ## 描述 develop分支整体合入同步到master,详细描述见提交记录。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!571 | 8 个月前 | |
refactor: 移除OPTIONAL和不再使用的opensdk Co-authored-by: yitaoxt<yitaoxt@qq.com> # message auto-generated for no-merge-commit merge: !2509 merge deelop_option into develop refactor: 移除OPTIONAL和不再使用的opensdk Created-by: yitaoxt Commit-by: yitaoxt Merged-by: cann-robot Description: # Pull Request ## 描述 移除OPTIONAL和不再使用的opensdk ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 修改前后二进制BEP一致 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!2509 | 5 个月前 | |
fix: ENABLE_ASAN归一化支持多种真值写法(TRUE/ON/YES等) Co-authored-by: kobemini<gengchao4@huawei.com> # message auto-generated for no-merge-commit merge: !2302 merge es_bufix0004 into develop fix: ENABLE_ASAN归一化支持多种真值写法(TRUE/ON/YES等) Created-by: kobemini Commit-by: kobemini Merged-by: cann-robot Description: # Pull Request ## 描述 在 cmake/generate_es_package.cmake 中,ENABLE_ASAN 变量在 file(WRITE) 生成 shell 脚本时被原值替换到脚本中。原代码在 shell 中使用字符串比较仅能匹配小写 true,导致用户传入 TRUE、ON、On、YES 等 CMake 标准真值时 ASAN 预加载逻辑不生效。 **修复方案**:在 file(WRITE) 之前,利用 CMake if(ENABLE_ASAN) 的原生布尔判断将值归一化为 "true" 或空字符串,写入 ENABLE_ASAN_NORMALIZED 变量供脚本模板使用。CMake 的 if() 自动识别所有标准真值(TRUE/True/ON/On/on/YES/yes/1 等),无需逐一枚举。 ## 变更类型 - [x] Bug 修复 - [ ] 新功能 - [ ] 代码风格更新 - [ ] 重构 - [ ] 构建过程或辅助工具的变动 - [ ] 文档内容更新 ## 如何测试 1. 使用 -DENABLE_ASAN=ON(或 TRUE、Yes、1)配置 CMake 项目 2. 检查生成的 run_gen_esb_with_lock.sh 脚本中 ASAN 判断逻辑是否正确包含 LD_PRELOAD 设置 3. 验证使用小写 true 时行为不变(向后兼容) ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) ## 其他信息 - 修改仅涉及 cmake/generate_es_package.cmake 一个文件 - 新增 7 行,修改 1 行 - 归一化逻辑在脚本生成前执行,无运行时开销 See merge request: cann/ge!2302 | 5 个月前 | |
fix: 修复llvm的asan编译 Co-authored-by: 叶龙剑<yelongjian1@huawei.com> # message auto-generated for no-merge-commit merge: !2186 merge dev-llt0422 into develop fix: 修复llvm的asan编译 Created-by: yelongjian Commit-by: 叶龙剑 Merged-by: cann-robot Description: # Pull Request ## 描述 修复llvm的asan编译 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1.NA ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!2186 | 5 个月前 | |
[chore]: Support Q2 building optimization - Support "cmake .. -DCANN_PACKAGES=xxx .." - Support 'make all'(cmake --build <all targets>) - Supports building of multiple components at a time - Add back 'Ascend-runtime_device-minios.tar.gz' to dflow-executor when building with 'ENABLE_SIGN'. Co-authored-by: z30016662<z30016662@huawei.com> Co-authored-by: zhuhaoran5<zhuhaoran5@huawei.com> # message auto-generated for no-merge-commit merge: !2207 merge support_Q2_building_optimization_20260423 into develop 【chore】: 支持Q2工程优化 Created-by: zhuhaoran5 Commit-by: zhuhaoran5;z30016662 Merged-by: cann-robot Description: # Pull Request ## 描述 支持Q2工程优化:支持 cmake 构建 run 包时使用默认目标 all,通过 CANN_PACKAGES 指定需要构建哪些 run 包 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [x] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 按照 README 部署构建环境 执行所有构建场景的脚本命令,能执行成功并且产物包内容与先前一致 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!2207 | 5 个月前 | |
【feat】: acl_mdl 模块支持 OM2 Co-authored-by: likun104<likun104@h-partners.com> Co-authored-by: wuzheng-hw<wuzheng14@huawei.com> # message auto-generated for no-merge-commit merge: !2687 merge acl_adapt_and_so_0506_backup into develop 【feat】: acl_mdl 模块支持 OM2 Created-by: wuzheng-hw Commit-by: wuzheng-hw;likun104 Merged-by: cann-robot Description: ## 描述 本PR实现了acl_mdl模块对OM2格式的完整支持,包括OM和OM2的解耦、核心接口适配、资源管理器拆分、TensorDesc解耦、AIPP支持和modena形态桩so生成。 ## 变更类型 - [x] ✨ 新功能 - [x] ♻️ 重构(OM和OM2解耦) - [x] 📦 构建过程或辅助工具的变动 ## 核心改动 ### 1. OM和OM2解耦 - 拆分libacl_mdl_impl.so为OM专属实现 - 新增libacl_mdl_impl_v2.so用于OM2实现 - AclResourceManager拆分为OM和OM2两个版本 - 移除OM对om2_executor的直接依赖 ### 2. 核心接口OM2适配 - aclmdlLoadFromFile/Unload: 支持OM2模型加载卸载 - aclmdlExecute/ExecuteAsync: 支持OM2模型执行 - aclmdlGetDesc: 支持OM2模型描述获取 - aclmdlQuerySize: 支持OM2模型大小查询 - aclmdlGetDescFromFile/Mem: 支持OM2模型预加载描述获取 ### 3. TensorDesc依赖解耦 - 新增Om2TensorDesc独立实现,不依赖GE图库 - GeTensorDesc保留在OM路径 ### 4. OM2 AIPP支持 - 新增acl_aipp_om2.cpp实现OM2 AIPP操作 - 支持aclmdlGetAippType/GetFirstAippInfo/SetInputAIPP等接口 ### 5. modena形态桩so支持 - 新增gen_stubapi_acl_mdl_impl.py脚本生成桩文件 - 桩so包含acl_mdl.h和acl_base_mdl.h的所有接口 - modena形态可用桩so替代真实impl.so,节省内存 ### 6. 新增测试用例 - acl_resource_manager_om2_unittest.cpp: 资源管理器测试 - om2_model_executor_unittest.cc: 执行器测试 - om2_package_helper_unittest.cc: 包管理工具测试 - test_om2.cc: 系统集成测试 ## 文件变更统计 - 45个文件变更 - 7223行新增 - 2325行删除 ## 核对清单 - [x] 代码遵循项目的代码风格 - [x] 已对代码进行了自测 - [x] 已更新了相关的文档 - [x] 使用了合适的类型标签(feat:) - [x] 已详细阅读了贡献指南 ## 其他信息 本次改动基于设计文档: /home/wuzheng/workspace/om2_docs/apis/acl_mdl模块支持OM2需求设计.md 主要实现了设计文档中的以下需求: 1. acl_mdl.h和acl_base_mdl.h接口OM2适配分析 2. OM和OM2解耦需求分析 3. modena形态编译打包适配 See merge request: cann/ge!2687 | 5 个月前 | |
feat: 支持Python自定义Fusion Pass开发能力 Co-authored-by: kobemini<gengchao4@huawei.com> # message auto-generated for no-merge-commit merge: !1892 merge python_pass_f_0002 into develop feat: 支持Python自定义Fusion Pass开发能力 Created-by: kobemini Commit-by: kobemini Merged-by: cann-robot Description: 20260326评审通过 # Pull Request ## 描述 本PR引入GE Python自定义Fusion Pass开发能力(V1),使用户可以通过纯Python编写 FusionBasePass并通过装饰器@register_fusion_pass注册,GE编译器在初始化阶段自动发现并执行Python pass。 ### 核心设计 - **独立bridge .so架构**:将Python版本敏感逻辑(pybind11、Python.h、libpython)收敛到独立的libge_python_pass_bridge.so中,ge_compiler.so保持Python ABI中立 - **复用现有执行框架**:Python pass注册到现有PassRegistry,由FusionPassExecutor统一调度执行,不新建第二套调度体系 - **环境变量发现机制**:通过ASCEND_GE_PY_PASS_PATH指定pass文件/目录路径,编译器自动扫描加载 ### 主要变更模块 **Python侧(新增 ge.passes 包)** - base.py:三类pass的纯Python基类(FusionBasePass、PatternFusionPass、DecomposePass)及PassStage、PassContext等数据类 - registry.py:Python侧pass注册表,提供@register_fusion_pass装饰器 - bootstrap.py:插件发现入口,从ASCEND_GE_PY_PASS_PATH扫描加载pass模块 - _bridge.py:Python与C++ bridge的协议层,管理pass holder生命周期 **C++侧(新增+修改)** - pass_plugin_loader:统一pass插件加载入口 - pass_registry:扩展全局注册表,新增PythonPassDescriptor、RegisterPythonPass等 - python_fusion_base_pass_adapter:Python pass的C++ adapter - python_fusion_base_pass_bridge_c_api:Bridge SO的稳定C ABI - python_fusion_base_pass_bridge_loader:Bridge SO的运行时加载器(dlopen/dlsym) - python_fusion_base_pass_pybind_bridge:Bridge SO的pybind11实现(嵌入式Python解释器) **构建系统** - 新增ge_python_pass_bridge共享库目标 - 重构Python依赖查找逻辑,新增ge_python_embed INTERFACE目标 **初始化入口改造** - ge_api_v2.cc、ge_ir_build.cc、ge_generator.cc:统一替换为LoadPassPlugins()/ShutdownPassPluginsForProcess() **测试** - 新增7个C++单元测试(adapter生命周期、pybind bridge端到端、TLS上下文等) - 新增Python侧集成测试(bootstrap发现、holder创建运行销毁) **文档** - 新增详细设计文档docs/ge_python/design/ge_python_pass_design.md(约1650行) ## 变更类型 - [ ] Bug 修复 - [x] 新功能 - [ ] 代码风格更新 - [ ] 重构 - [ ] 构建过程或辅助工具的变动 - [x] 文档内容更新 ## 如何测试 1. 编译ge_compiler组件:bash build.sh --ge_compiler 2. 编译运行UT测试:bash tests/run_test.sh --ut=ge 3. 重点验证UT用例:PythonFusionBasePass_Run_CreateExecuteDestroy、PythonFusionBasePass_Run_Failed、PythonFusionBasePass_PybindBridge_RunSuccess等 4. 验证Python侧测试:python_pass_bootstrap_test.py ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(feat:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md) ## 其他信息 本PR为"GE Pass Python化 V1"功能的首次提交,仅支持FusionBasePass类型。PatternFusionPass和DecomposePass的桥接将在后续PR中实现。 See merge request: cann/ge!1892 | 6 个月前 | |
Unified compilation project Co-authored-by: tangqunzhang<tangqunzhang@huawei.com> # message auto-generated for no-merge-commit merge: !833 merge develop into develop Unified compilation project Created-by: tangqunzhang Commit-by: tangqunzhang Merged-by: cann-robot Description: # Pull Request ## 描述 问题/功能描述 本次PR是一个综合性的代码优化与重构集合,主要围绕三个核心目标展开。首先,对CMake构建系统进行了大规模标准化和优化,旨在提升构建配置的集中管理能力、灵活性和可维护性,包括统一编译/链接选项、重构库依赖、增强测试构建支持(如ASAN/GCOV)以及新增目标克隆功能。其次,对多个C++单例类(如AclResourceManager、ModelSaveHelperFactory、GlobalProfilingWrapper、KernelBinRegistry等)的实现进行了重构,将内联定义从头文件移至源文件,以消除潜在的链接期多重定义风险和静态初始化顺序问题,提升代码健壮性。最后,修复了多个明确的编码缺陷,包括空指针解引用、内存管理错误、测试环境隔离问题以及单元测试逻辑错误,增强了代码的稳定性和测试的可靠性。 修改方案描述 修改方案主要包括三个方面。在构建系统层面,将大量硬编码的编译和链接选项(如-Werror、-O2)替换为统一的CMake变量(如${AIR_COMMON_COMPILE_OPTION}、${AIR_COMMON_LINK_OPTION}),重构了UDF、部署器等模块的构建流程以使用预编译静态库,并新增了条件化的ASAN支持和测试环境变量管理。在代码结构层面,将十余个工厂类、管理器类和工具类(如AclResourceManager::GetInstance()、UdfModelBuilder::GetInstance()等)的单例方法实现从头文件内联定义移至对应的.cc源文件中,遵循了声明与实现分离的最佳实践。在缺陷修复层面,修复了DataSliceAdapter::GetTensorStr中的空指针解引用、FftsPlusArgsHelper::AppendIoAddrs中的日志打印空指针风险、单元测试中的内存释放顺序错误、环境变量(LD_PRELOAD)干扰以及多个测试用例的逻辑和数据错误,并补充了必要的桩函数实现。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1.修改编译选项和UT,ST,原有用例可以执行通过就可以 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!833 | 7 个月前 | |
Initial commit | 9 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 6 个月前 | ||
| 6 个月前 | ||
| 5 个月前 | ||
| 9 个月前 | ||
| 9 个月前 | ||
| 7 个月前 | ||
| 9 个月前 | ||
| 6 个月前 | ||
| 7 个月前 | ||
| 5 个月前 | ||
| 5 个月前 | ||
| 9 个月前 | ||
| 8 个月前 | ||
| 5 个月前 | ||
| 5 个月前 | ||
| 5 个月前 | ||
| 5 个月前 | ||
| 5 个月前 | ||
| 6 个月前 | ||
| 7 个月前 | ||
| 9 个月前 |