文件最后提交记录最后更新时间
【PR】:修改不规范的日志 Co-authored-by: chenqian1365<chenqian2@huawei.com> # message auto-generated for no-merge-commit merge: !2583 merge develop into develop 【PR】:修改不规范的日志 Created-by: chenqian1365 Commit-by: chenqian1365 Merged-by: cann-robot Description: # Pull Request ## 描述 将日志里 can not/Can not 改为 cannot/Cannot ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新功能 - [x] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!258324 天前
Initial commit 5 个月前
【PR】: 对外重复头文件修改对内部分新增文件,待legacy仓修改后再删除 Co-authored-by: SeasonChu<zhuxincheng2@huawei.com> # message auto-generated for no-merge-commit merge: !3198 merge fixIncPart2 into develop 【PR】: 对外重复头文件修改对内部分新增文件,待legacy仓修改后再删除 Created-by: SeasonChu Commit-by: SeasonChu Merged-by: cann-robot Description: # Pull Request ## 描述 文件名相同,内容不同,一个对外,一个内部,内部的头文件整改文件名 问题原因: 历史遗留问题 问题影响: 外部开发者易用性体验,不易理解 解决方案: 内部头文件整改文件名,保留原文件,待leagcy仓修改后再删除 ## 变更类型 请选择本次引入的变更类型: <!-- [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!31985 天前
【feat】:自定义算子入图支持地址刷新 Co-authored-by: yuht9<yuhaitao6@huawei.com> # message auto-generated for no-merge-commit merge: !3270 merge develop into develop 【feat】:自定义算子入图支持地址刷新 Created-by: yuht9 Commit-by: yuht9 Merged-by: cann-robot Description: # Pull Request ## 描述 新增接口与数据结构: - ArgsHandler: args 内存管理抽象接口(VA 分配 + H2D 拷贝) - KernelArgs: kernel launch arguments 结构体,含 placement 信息 - UpdateArgsContext: 地址刷新上下文,继承自 EagerOpExecutionContext - ArgsUpdater: 自定义算子地址刷新能力接口,算子继承后框架在 I/O 地址变化时回调 UpdateHostArgs - SinkOpArgsHandler: SinkOp 场景下 ArgsHandler 实现,委托 CustomTaskInfo 完成分配 - ArgsAllocationResult: 分配结果描述,含 reserved/extra 来源信息 - TaskInfo 新增 NeedReserveArgsTable/UpdateHostArgs/GetArgsAllocationResults 虚接口 CustomTaskInfo 扩展: - 支持 ArgsUpdater 算子检测(IsAddressRefreshable)及地址刷新策略 - MallocReadOnlyDevArgsImpl 双路径分配:reserved 段(支持刷新)/ 动态内存(H2D 直拷) - UpdateHostArgs 实现 I/O 地址更新及算子回调 - InitArgsIoAddrsUpdater 初始化地址映射关系 ModelArgsManager 扩展: - 三级内存分配:reserved segment -> existing extra pool -> new extra pool - IntegrateCustomOpArgs 将自定义算子 args 集成到统一刷新流程 - IntegrateReservedH2DCopyDatas/IntegrateExtraH2DCopyDatas 注册 H2D 刷新数据 - IntegrateReservedUpdateDatas/IntegrateExtraUpdateDatas 注册 host args 刷新数据 - UpdateCustomOpHostArgs/RefreshExtraH2DCopyDatas 执行阶段触发刷新 - custom_op_policies_to_task_infos_ 使用 unordered_set 保证去重 编译器适配: - block_mem_assigner: 自定义算子支持零拷贝(IsAddressRefreshable 动态判断) - mem_layout_conflict_util: 自定义算子支持地址刷新 CustomOpFactory 扩展: - IsAddressRefreshable: 通过 dynamic_cast 判断算子是否支持地址刷新 UT/ST 用例: - SinkOpArgsHandler/CustomTaskInfo/ModelArgsManager/ArgsIoAddrsUpdater/UpdateArgsContext/DavinciModel 单元测试 - 自定义算子地址刷新端到端 ST 用例及 CustomTaskInfo 地址刷新模式验证 - reserved+extra 去重验证、多个 ArgsUpdater 并发刷新测试 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1.构造自定算子连接模型边界场景,算子实现UpdateHostArgs函数,模型执行精度正确。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 20260423评审通过 See merge request: cann/ge!32701 天前
feat: 扩展TensorMove消除场景(特殊源节点 + 多TM消费 + 读写/排布冲突检查) Co-authored-by: stevenaw0<huangguijun@huawei.com> # message auto-generated for no-merge-commit merge: !2908 merge tm_delete_optimize2 into develop feat: 扩展TensorMove消除场景(特殊源节点 + 多TM消费 + 读写/排布冲突检查) Created-by: stevenaw0 Commit-by: stevenaw0 Merged-by: cann-robot Description: # Pull Request ## 描述 扩展现有 TensorMoveDeletePass,新增两种 TensorMove 消除场景: 1. **场景一**:variable/const 等特殊源节点下的 TensorMove,当后继不覆写源内存时允许消除 2. **场景二**:源节点输出被多个 TensorMove 消费时,将兄弟 TM 视为只读消费者,允许逐 TM 决策消除 同时新增两道安全关卡: - **Rule 4 (读写冲突检查)**:调用 mem_rw_conflict_optimize 新增接口,删除 TM 前判断是否导致读写冲突 - **Rule 5 (内存排布冲突检查)**:调用 mem_layout_conflict_util 新增接口,删除 TM 前判断是否导致内存排布冲突 ## 变更类型 - [ ] 🐛 Bug 修复 - [x] ✨ 新功能 - [ ] 💄 代码风格更新 - [ ] ♻️ 重构 - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue 无 ## 修改文件 | 文件 | 改动 | |------|------| | compiler/graph/optimize/mem_rw_conflict_optimize.h | 新建 | | compiler/graph/optimize/mem_rw_conflict_optimize.cc | +41行 | | compiler/graph/optimize/mem_layout_conflict_optimize/mem_layout_conflict_util.h | +4行 | | compiler/graph/optimize/mem_layout_conflict_optimize/mem_layout_conflict_util.cc | +132行 | | compiler/graph/manager/graph_manager.cc | +2行 | | compiler/graph/passes/standard_optimize/tensor_move_delete_pass.cc | +93/-4行 | | tests/ge/ut/ge/graph/passes/tensor_move_delete_pass_unittest.cc | +151行 | ## 核对清单 - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签 - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md) ## 其他信息 详细设计文档见 docs/superpowers/specs/2026-05-15-tensormove-optimize2-design.md See merge request: cann/ge!29088 天前