| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
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 | 1 个月前 | |
feat: 支持自定义输入输出offset的内存分配 Co-authored-by: tangqunzhang<tangqunzhang@huawei.com> # message auto-generated for no-merge-commit merge: !4015 merge feat/custom-input-output-memory-offset into develop feat: 支持自定义输入输出offset的内存分配 Created-by: tangqunzhang Commit-by: tangqunzhang Merged-by: cann-robot Description: ## 描述 性能优化,为了减少一次片内拷贝,HcomAllgather算子输入输出共用一块内存,输入节点直接按偏移量写入内存指定位置,由优化pass设置属性,内存分配按属性进行偏移(本PR只实现内存分配部分)。 新增 ATTR_NAME_CUSTOM_INPUT_OUTPUT_OFFSET 属性,用于区分普通 ref 场景,实现自定义输入输出 offset。 主要变更: 1. 新增 _custom_input_output_offset 属性定义(ge_attr_define.cc/h) 2. 新增 GetOffsetFromPeerOutputList/GetOffsetFromPeerInputList/GetCustomOffset 三个函数,通过 ATTR_NAME_OUTPUT_OFFSET_LIST_FOR_CONTINUOUS(输入peer)和 ATTR_NAME_INPUT_OFFSET_LIST_FOR_CONTINUOUS(输出peer)计算输出相对输入的偏移量,两个属性互斥校验,同时检测 ref/atomic 冲突 3. CheckRefNodeOffset 中使用 GetCustomOffset 计算自定义 offset 后校验 4. UpdateRefOpOutputOffset 中 custom_offset != 0 时跳过输出 offset 刷新 5. AssignContinuousOutputMemory 中 NoPadding 分支增加 UpdateOffsetsByOffsetListAttr 调用 6. 修复 UpdateOffsetsByOffsetListAttr 日志中 output/input 索引描述错误 7. 补充 4 个 UT 用例和 1 个 ST 用例 ## 变更类型 - [x] ✨ 新功能 - [x] 🐛 Bug 修复 ## 关联的Issue 无 ## 如何测试 1. 对需要自定义输入输出 offset 的算子节点设置 _custom_input_output_offset 和 _output_reuse_input 属性为 true 2. 在输入 peer 设置 _output_offset_list_for_continuous 或在输出 peer 设置 _input_offset_list_for_continuous 指定偏移量 3. 编译图并检查内存分配结果,验证 output_offset - input_offset 是否等于自定义偏移量 4. 验证未设置该属性的算子行为不受影响 5. UT:CustomInputOutputOffset_WithOutputOffsetList_Success、CustomInputOutputOffset_WithInputOffsetList_Success、CustomInputOutputOffset_PeerOutputIsAtomic_Failed、CustomInputOutputOffset_PeerInputIsRef_Failed 6. ST:CustomInputOutputOffset_WithInputOffsetList_Success ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定 ## 其他信息 该属性用于支持特定场景下输入输出需要不同 offset 的内存排布需求,避免 ref 机制强制将输出 offset 刷新为与输入一致。GetCustomOffset 仅在同时设置 ATTR_NAME_CUSTOM_INPUT_OUTPUT_OFFSET 和 ATTR_NAME_OUTPUT_REUSE_INPUT 时生效,且仅支持单输入单输出节点。 See merge request: cann/ge!4015 | 29 天前 | |
【PR】: [feat] [autofuse] Reconstruction of autofuse frontend code. Co-authored-by: xingzhixiong<xingzhixiong@huawei.com> # message auto-generated for no-merge-commit merge: !3744 merge develop_codecheck into develop 【PR】: [feat] [autofuse] Reconstruction of autofuse frontend code. Created-by: xingzhixiong Commit-by: xingzhixiong Merged-by: cann-robot Description: # Pull Request ## 描述 将ge中的autofuse前端依赖的gaf仓头文件进行解耦优化,短期无法解耦的头文件暂时采用拷贝方式,后续等ascir标准化需求落地后再开放标准API到cann包中供ge侧使用。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. ci流水线pass 2. rdv pass ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!3744 | 1 个月前 | |
【fix】: autofuse CalculateOneOrZero 修复 IsNan 调用方式及 INT32 兼容性 Co-authored-by: Ren_Jie<renjie57@huawei.com> # message auto-generated for no-merge-commit merge: !4165 merge fix/autofuse-nan-safe-calculateoneorzero into develop 【fix】: autofuse CalculateOneOrZero 修复 IsNan 调用方式及 INT32 兼容性 Created-by: Ren_Jie Commit-by: Ren_Jie Merged-by: cann-robot Description: ## 问题 CalculateOneOrZero 中新增的 NaN 安全处理存在两个问题: 1. loop::IsNan 是函数, 需调用 loop::IsNan(input) 生成掩码, 而非传函数指针(编译错误) 2. Isnan 算子仅支持浮点类型(DT_FLOAT/DT_FLOAT16/DT_BF16), 对 DT_INT32 调用会校验失败 ## 修复 - 将 loop::IsNan 改为 loop::IsNan(input) 生成掩码 - 仅对 DT_FLOAT/DT_FLOAT16 施加 NaN 处理, DT_INT32 保持原逻辑(整数无 NaN) ## 自测 - pre-commit 检查全部通过(clang-format/codespell/OAT 等) See merge request: cann/ge!4165 | 22 天前 | |
【PR】: [feat] [autofuse] add ut. Co-authored-by: xingzhixiong<xingzhixiong@huawei.com> # message auto-generated for no-merge-commit merge: !4401 merge develop_openSource_exercise into develop 【PR】: [feat] [autofuse] add ut. Created-by: xingzhixiong Commit-by: xingzhixiong Merged-by: cann-robot Description: # Pull Request ## 描述 补充autofuse相关ut。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 蓝区流水线通过 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!4401 | 5 天前 | |
【PR】: 内部头文件整改,同名不同内容重命名 Co-authored-by: jikai-tyler<jikai5@huawei.com> # message auto-generated for no-merge-commit merge: !3907 merge header_internal_2 into develop 【PR】: 内部头文件整改,同名不同内容重命名 Created-by: jikai-tyler Commit-by: jikai-tyler Merged-by: cann-robot Description: # Pull Request ## 描述 | 原文件名 | 新文件名 | |---|---| | compiler/graph/optimize/autofuse/autofuse/can_fuse/graph_manager.h | autofuse_graph_manager.h | | compiler/graph/optimize/autofuse/autofuse/lowering/lowering_utils.h | autofuse_lowering_utils.h | | compiler/graph/optimize/autofuse/autofuse/pattern_fusion/cast_remove_pass.h | autofuse_cast_remove_pass.h | ## 变更类型 请选择本次引入的变更类型: <!-- [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!3907 | 1 个月前 | |
【PR】: [feat] [autofuse] add ut. Co-authored-by: xingzhixiong<xingzhixiong@huawei.com> # message auto-generated for no-merge-commit merge: !4401 merge develop_openSource_exercise into develop 【PR】: [feat] [autofuse] add ut. Created-by: xingzhixiong Commit-by: xingzhixiong Merged-by: cann-robot Description: # Pull Request ## 描述 补充autofuse相关ut。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 蓝区流水线通过 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如: feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!4401 | 5 天前 |