| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
perf(repeat_interleave): 小cp场景用DataCopyGather替代逐元素DataCopyUnAlign Co-authored-by: yourealize<chenzhanxi1@huawei.com> # message auto-generated for no-merge-commit merge: !6970 merge perf/repeat_interleave_gather_opt into master perf(repeat_interleave): 小cp场景用DataCopyGather替代逐元素DataCopyUnAlign Created-by: yourealize Commit-by: yourealize Merged-by: cann-robot Description: ## 描述 当 cp * sizeof(T) < 32 字节时,原实现 ProcessCpMatchToUb 用 DataCopyUnAlign 逐元素复制,Vector 寄存器利用率仅 1.56%,Vector 流水占比 91.3%。 **优化**:新增 Gather 路径 ProcessCpMatchToUbGather,在 __VEC_SCOPE__ 中用 Arange + Div + Cast + Muls 构造索引(全寄存器计算,无需 UB buffer),DataCopyGather 批量 gather,寄存器利用率接近 100%。 **性能数据**(输入 [4096, 512],repeat=4,dim=1,float32): - 优化前:Avg 3168 us,Vector 占比 91.3% - 预期优化后:Vector 指令数减少 ~60 倍 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/3805 ## 测试 - 编译通过(--opkernel --ops=repeat_interleave --soc=ascend950) - 不影响其他分支:tiling_key=101 + cp>=128B、tiling_key=102、tiling_key=201/202 路径不变 ## 文档更新 无需更新文档 ## 类型标签 - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [x] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-nn!6970 | 3 天前 | |
format cpp Co-authored-by: yang-di52<yangdi52@huawei.com> # message auto-generated for no-merge-commit merge: !6784 merge issue_fix into master format cpp Created-by: yang-di52 Commit-by: yang-di52 Merged-by: cann-robot Description: ## 描述 批量刷新cpp代码格式 ## 关联的Issue [#3791](https://gitcode.com/cann/ops-nn/issues/3791) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!6784 | 5 天前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 3 天前 | ||
| 5 天前 |