| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
fix: 添加主机环境OS和CPU参数有效性检查 Co-authored-by: Chang-an-HW<machangan@huawei.com> # message auto-generated for no-merge-commit merge: !4018 merge fix_host_os_param into develop fix: 添加主机环境OS和CPU参数有效性检查 Created-by: Chang-an-HW Commit-by: Chang-an-HW Merged-by: cann-robot Description: # Pull Request ## 描述 fix: 添加主机环境OS和CPU参数有效性检查 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. atc命令导出om1模型,设置--host_env_os为不等于linux的值,比如linux# 1. atc命令导出om1模型,设置--host_env_cpu为不等于x86_64、aarch64的值,比如x86_64#, aarch64# ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!4018 | 1 个月前 | |
fix: delete RefIdentity without validation in RefIdentityDeleteOpPass Co-authored-by: wangyuchen<wangyuchen38@huawei.com> # message auto-generated for no-merge-commit merge: !4024 merge fix/variable_del_pass into develop fix: delete RefIdentity without validation in RefIdentityDeleteOpPass Created-by: yuchen97 Commit-by: wangyuchen Merged-by: cann-robot Description: ## 描述 ### 背景:RefIdentity 的功能 RefIdentity 是 VariablePrepareOpPass 插入的编译期临时占位节点。当 Variable 的下游是 **没有 ref 输出的 RefOp**(如 RefSwitch)时,VariableRef 节点没有自然的挂载点。此时插入 RefIdentity 作为 identity 桥梁,扇出一个分支给 VariableRef: Variable → RefIdentity → RefOp └→ VariableRef RefIdentity 本身没有计算语义,纯粹是为了让 VariableRef 在图结构上合法存在。在变量优化完成后,由 RefIdentityDeleteOpPass 旁路删除。 ### 问题 RefIdentityDeleteOpPass 在删除前调用 GetRefNode 校验 RefIdentity 的下游是否为 RefOp。在精度模式(force_fp16 / allow_mix_precision_fp16)下,FE 会在 RefIdentity 和 RefOp 之间插入 Cast/TransData 等转换算子: Variable → RefIdentity → Cast → RefOp └→ VariableRef GetRefNode 只检查直连 peer,无法穿透 Cast,导致校验失败返回 nullptr,Pass 返回 FAILED,**编译中断**。 ### 解决方案 删除 GetRefNode 前置校验逻辑,直接对 RefIdentity 执行 IsolateNode 旁路删除。理由: 1. IsolateNode 会将 RefIdentity 的输入(Variable)直连到所有输出对端(VariableRef / Cast / RefOp),保留原有数据流和控制边 2. RefIdentity 是 GE 内部算子,仅由 VariablePrepareOpPass 插入,不存在误删风险 3. GetRefNode 的返回值仅用于决定是否删除,DealNoOutputRef 本身不依赖该结果 ## 变更类型 - [x] 🐛 Bug 修复 ## 关联的Issue ## 如何测试 1. 编译 UT:ref_identity_delete_op_pass_unittest 2. 运行三个测试用例: - RefIdentityDeleteOpPass_Ok_DirectConnectRefOp:RefIdentity 直连 RefOp 场景 - RefIdentityDeleteOpPass_Ok_NoRefIdentity:图中无 RefIdentity 场景 - RefIdentityDeleteOpPass_Ok_TransOpBetweenRefOp:精度模式下 RefIdentity 和 RefOp 之间有 Cast 的场景 ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如 feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定 ## 其他信息 本修改仅影响 RefIdentityDeleteOpPass,不涉及 VariableRefDeleteOpPass 和 VariablePrepareOpPass。在精度模式场景下,删除 RefIdentity 后 VariableRef 的 peer 变为 Variable,VariableRefDeleteOpPass 走自引用跳过分支,行为与无 Cast 场景一致。 See merge request: cann/ge!4024 | 1 个月前 | |
【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 | 7 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 1 个月前 | ||
| 1 个月前 | ||
| 7 个月前 |