| Initial commit
| 5 个月前 |
| refactor: 删除ge_rts_decl.h中与rt_external重复的定义
Co-authored-by: tangqunzhang<tangqunzhang@huawei.com>
# message auto-generated for no-merge-commit merge:
!3303 merge refactor/remove-duplicate-rt-decls into develop
refactor: 删除ge_rts_decl.h中与rt_external重复的定义
Created-by: tangqunzhang
Commit-by: tangqunzhang
Merged-by: cann-robot
Description: # Pull Request
## 描述
删除ge_rts_decl.h中与rt_external头文件重复的定义,避免重复声明。
## 变更内容
- 删除rtDevBinary_t结构体(已在rt_external_kernel.h中定义)
- 删除rtDevBinaryRegister函数声明(已在rt_external_kernel.h中定义)
- 删除rtRegisterAllKernel函数声明(已在rt_external_kernel.h中定义)
- tbe_kernel_handle.h改为直接include runtime/rt.h
## 变更类型
- [ ] 🐛 Bug 修复
- [ ] ✨ 新功能
- [ ] 💄 代码风格更新
- [x] ♻️ 重构
- [ ] 📦 构建过程或辅助工具的变动
- [ ] 📝 文档内容更新
## 核对清单
- [x] 我的代码遵循了项目的代码风格
- [x] 我已对代码进行了自测
- [ ] 我已更新了相关的文档
- [x] 我在标题中使用了合适的类型标签
See merge request: cann/ge!3303 | 1 天前 |
| [feat] 支持动态注册算子后刷新 CustomOpsKernelInfoStore
Co-authored-by: thj<tanghaojie1@huawei.com>
# message auto-generated for no-merge-commit merge:
!2236 merge custom_op_adapt into develop
[feat] 支持动态注册算子后刷新 CustomOpsKernelInfoStore
Created-by: tang-haojie
Commit-by: thj
Merged-by: cann-robot
Description:
# Pull Request
## 描述
问题背景
CustomOpsKernelInfoStore 在 Initialize() 时从 CustomOpFactory 读取已注册算子并缓存到 op_info_map_。当用户通过 dlopen 动态加载新的算子 SO 文件后,这些新注册的算子无法被感知,导致编译时找不到算子信息。
解决方案
1. 基类增加 Refresh() 虚方法:在 OpsKernelInfoStore 基类添加虚方法 Refresh()(默认空实现返回 SUCCESS),仅 CustomOpsKernelInfoStore 需实现,其他子类使用默认实现。
2. OpsKernelManager 增加刷新入口:新增 RefreshOpsKernelInfo() 方法,遍历所有 OpsKernelInfoStore 调用其 Refresh()。
3. PreRun 入口触发刷新:在 graph_manager.cc 的 PreRun() 函数入口调用刷新,确保编译前能感知新注册的算子。
4. 线程安全:CustomOpsKernelInfoStore 添加 std::mutex mu_ 保护 op_info_map_,所有访问方法(Initialize、Finalize、Refresh、GetAllOpsKernelInfo、CheckSupported)均加锁。
5. 代码封装:Initialize() 和 Refresh() 的公共逻辑提取为私有方法 UpdateOpInfoMap()。
修改文件
文件 变更内容
inc/graph_metadef/common/opskernel/ops_kernel_info_store.h 添加 virtual Status Refresh() 虚方法(置于类末尾,兼容性考虑)
compiler/engines/custom_engine/custom_ops_kernel_info_store.h 添加 mutable std::mutex mu_ 成员、Refresh() override 声明、UpdateOpInfoMap() 声明
compiler/engines/custom_engine/custom_ops_kernel_info_store.cc 实现 Refresh()、UpdateOpInfoMap(),所有访问 op_info_map_ 的方法加锁
compiler/engines/manager/opskernel_manager/ops_kernel_manager.h 添加 RefreshOpsKernelInfo() 声明
compiler/engines/manager/opskernel_manager/ops_kernel_manager.cc 实现 RefreshOpsKernelInfo()
compiler/graph/manager/graph_manager.cc PreRun() 入口调用 OpsKernelManager::GetInstance().RefreshOpsKernelInfo()
使用场景
用户在模型编译前动态加载算子 SO(如插件式算子扩展),刷新机制确保编译流程能正确获取新算子的 kernel 信息。
## 变更类型
请选择本次引入的变更类型:
<!-- [x] 表示选中 -->
- [ ] 🐛 Bug 修复
- [x] ✨ 新功能
- [ ] 💄 代码风格更新(格式化,局部变量)
- [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动)
- [ ] 📦 构建过程或辅助工具的变动
- [ ] 📝 文档内容更新
## 关联的Issue
<!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 -->
## 如何测试
描述测试此变更的步骤和前提条件:
1.
2.
## 核对清单
<!-- [x] 表示选中 -->
- [ ] 我的代码遵循了项目的代码风格
- [ ] 我已对代码进行了自测
- [ ] 我已更新了相关的文档
- [ ] 我在标题中使用了合适的类型标签(如:feat:, fix:)
- [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等
## 其他信息
在此添加任何其他关于本次 PR 的说明。
See merge request: cann/ge!2236 | 1 个月前 |
| 【PR】: 简要描述 fix:aclop场景频繁调用gc collect导致性能劣化
Co-authored-by: jiang-mingming01<jiangmingming16@h-partners.com>
# message auto-generated for no-merge-commit merge:
!141 merge br_mingmingj_8596 into master
【PR】: 简要描述 fix:aclop场景频繁调用gc collect导致性能劣化
Created-by: jiang-mingming01
Commit-by: jiang-mingming01
Merged-by: cann-robot
Description:
# Pull Request
## 描述
解决aclop场景下,频繁调用gc collect导致的性能劣化
## 变更类型
请选择本次引入的变更类型:
<!-- [x] 表示选中 -->
- [x] 🐛 Bug 修复
- [ ] ✨ 新功能
- [ ] 💄 代码风格更新(格式化,局部变量)
- [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动)
- [ ] 📦 构建过程或辅助工具的变动
- [ ] 📝 文档内容更新
## 关联的Issue
<!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 -->
## 如何测试
描述测试此变更的步骤和前提条件:
1.构造:重复下发aclop,触发session的创建和析构
2.观察端到端执行时间有没有劣化
## 核对清单
<!-- [x] 表示选中 -->
- [x] 我的代码遵循了项目的代码风格
- [x] 我已对代码进行了自测
- [x] 我已更新了相关的文档
- [x] 我在标题中使用了合适的类型标签(如:feat:, fix:)
- [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等
## 其他信息
在此添加任何其他关于本次 PR 的说明。
See merge request: cann/ge!141 | 4 个月前 |
| 【PR】:ge一月份需求合入(包含整改dflow ST、自定义算子执行Context等)
Co-authored-by: jikai-tyler<jikai5@huawei.com>
# message auto-generated for no-merge-commit merge:
!223 merge master into master
【PR】:ge一月份需求合入(包含整改dflow ST、自定义算子执行Context等)
Created-by: jikai-tyler
Commit-by: jikai-tyler
Merged-by: cann-robot
Description:
# Pull Request
## 描述
ge一月份需求合入:
1、llt测试用例相关重复stub文件清理
2、Triton入图parser解析dlopen的handle关闭
- Triton入图parser解析dlopen的handle关闭
- 补充tensorflow 中其他的入参类型
- 优化parser 解析的的代码
3、UserGraphsManager suppport gert::Tensor
- UserGraphsManager及JitExecutor等RunGraphAsync入参由ge::Tensor改为gert::Tensor
- 老的兼容接口Session::RunGraph/RunGraphAsync在ge_api.cc 将ge::Tensor转换为gert::Tensor,然后调用InnerSession的接口。
4、整改dflow ST中的HELPER_RES_FILE_PATH
- HELPER_RES_FILE_PATH配置文件已经废弃,需要删除并整改用例使用RESOURCE_CONFIG_PATH。
- rtGetIsHeterogenous接口已经废弃,需要删除并整改用例使用RESOURCE_CONFIG_PATH环境变量。
5、注册ge错误码
- 从error_code.json文件中拆分出GE错误码,通过ErrorManager模块的对外接口REG_FORMAT_ERROR_MSG宏完成GE错误码的注册
6、使能acl目录覆盖率拦截项
7、triton入图parser解析优化
8、告警规则处理
9、refactor parser/common/tuple.h
10、fix UserGraphControl SetCompiledFlag/SetCompiledFlag
11、修复Sample问题
- Include stdint and stddef for base mdl
- move CheckRunGraphMode to ge_api_v2.cc
12、自定义算子执行Context
13、fix AllRealInputsAreTheSameOutAnchor error log issue
- 在Session::AddGraph时会造一个UserGraphControl实例。因此在UserGraphControl中增加compiled_flag
14、bugfix:handling excessively long name
- 避免因字符串过长导致二进制匹配耗尽资源而coredump,裁剪name,只保留最开始的128字符
15、acl code check告警处理
16、modify 3rd compile para
17、修改自定义ES_API Sample问题 && README.md
18、Refined inner session to no longer retrieve GraphNode or GraphOptions via graph_id from graph_manager.
19、ES关键类PIMPL实现 && 修改命名空间
- EsCGraphBuilder, CompliantNodeBuilder, EsCTensorHolder改为PIMPL实现
- 修改AddEdgeAndUpdatePeerDesc和CompliantNodeBuilder命名空间至ge::es
20、手动实现log功能, 实现debug_print函数来定位
## 变更类型
请选择本次引入的变更类型:
<!-- [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!223 | 3 个月前 |
| feat: 删除无用变量及分支
Co-authored-by: 叶龙剑<yelongjian1@huawei.com>
# message auto-generated for no-merge-commit merge:
!1532 merge dev-env0327 into develop
feat: 删除无用变量及分支
Created-by: yelongjian
Commit-by: 叶龙剑
Merged-by: cann-robot
Description:
# Pull Request
## 描述
删除老编译框架的无用变量及分支
## 变更类型
请选择本次引入的变更类型:
<!-- [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!1532 | 2 个月前 |
| 【PR】:ge一月份需求合入(包含整改dflow ST、自定义算子执行Context等)
Co-authored-by: jikai-tyler<jikai5@huawei.com>
# message auto-generated for no-merge-commit merge:
!223 merge master into master
【PR】:ge一月份需求合入(包含整改dflow ST、自定义算子执行Context等)
Created-by: jikai-tyler
Commit-by: jikai-tyler
Merged-by: cann-robot
Description:
# Pull Request
## 描述
ge一月份需求合入:
1、llt测试用例相关重复stub文件清理
2、Triton入图parser解析dlopen的handle关闭
- Triton入图parser解析dlopen的handle关闭
- 补充tensorflow 中其他的入参类型
- 优化parser 解析的的代码
3、UserGraphsManager suppport gert::Tensor
- UserGraphsManager及JitExecutor等RunGraphAsync入参由ge::Tensor改为gert::Tensor
- 老的兼容接口Session::RunGraph/RunGraphAsync在ge_api.cc 将ge::Tensor转换为gert::Tensor,然后调用InnerSession的接口。
4、整改dflow ST中的HELPER_RES_FILE_PATH
- HELPER_RES_FILE_PATH配置文件已经废弃,需要删除并整改用例使用RESOURCE_CONFIG_PATH。
- rtGetIsHeterogenous接口已经废弃,需要删除并整改用例使用RESOURCE_CONFIG_PATH环境变量。
5、注册ge错误码
- 从error_code.json文件中拆分出GE错误码,通过ErrorManager模块的对外接口REG_FORMAT_ERROR_MSG宏完成GE错误码的注册
6、使能acl目录覆盖率拦截项
7、triton入图parser解析优化
8、告警规则处理
9、refactor parser/common/tuple.h
10、fix UserGraphControl SetCompiledFlag/SetCompiledFlag
11、修复Sample问题
- Include stdint and stddef for base mdl
- move CheckRunGraphMode to ge_api_v2.cc
12、自定义算子执行Context
13、fix AllRealInputsAreTheSameOutAnchor error log issue
- 在Session::AddGraph时会造一个UserGraphControl实例。因此在UserGraphControl中增加compiled_flag
14、bugfix:handling excessively long name
- 避免因字符串过长导致二进制匹配耗尽资源而coredump,裁剪name,只保留最开始的128字符
15、acl code check告警处理
16、modify 3rd compile para
17、修改自定义ES_API Sample问题 && README.md
18、Refined inner session to no longer retrieve GraphNode or GraphOptions via graph_id from graph_manager.
19、ES关键类PIMPL实现 && 修改命名空间
- EsCGraphBuilder, CompliantNodeBuilder, EsCTensorHolder改为PIMPL实现
- 修改AddEdgeAndUpdatePeerDesc和CompliantNodeBuilder命名空间至ge::es
20、手动实现log功能, 实现debug_print函数来定位
## 变更类型
请选择本次引入的变更类型:
<!-- [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!223 | 3 个月前 |
| Initial commit
| 5 个月前 |
| Initial commit
| 5 个月前 |
| Initial commit
| 5 个月前 |
| Initial commit
| 5 个月前 |
| Initial commit
| 5 个月前 |
| Initial commit
| 5 个月前 |