| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
fix sfag non-optimized path Co-authored-by: huzhipeng<huzhipeng17@h-partners.com> # message auto-generated for no-merge-commit merge: !7810 merge 0617m into master fix sfag non-optimized path Created-by: huzhipeng Commit-by: huzhipeng Merged-by: cann-robot Description: 变更摘要 此 PR 修复了稀疏 Flash Attention 梯度(SFAG)的非优化路径,主要引入了一套基于序列长度、块大小等条件的门控决策,用于在算子中切换优化/非优化 scatter 路径。当 enableOptimizedScatter 为 false 时,VecOp 和 CubeOp 各模块使用独立的非优化数据搬运、Gather 和 ScatterAdd 实现,涉及不同的内存布局、缓冲区大小、事件同步策略和偏移计算方式。 主要改动: 新增 OptimizedScatterGateDecision 门控决策:按 selectedBlockSize、N1、gateS1/gateS2、effectiveSelectedTokens 等阈值决定是否启用优化 scatter,并输出详细日志;确定性模式强制走非优化路径。 非优化路径和优化路径分离干净:UB 初始化布局、事件同步、workspace分配、nz转nd等均和优化路径独立 ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!7810 | 23 天前 | |
fix sfag non-optimized path Co-authored-by: huzhipeng<huzhipeng17@h-partners.com> # message auto-generated for no-merge-commit merge: !7810 merge 0617m into master fix sfag non-optimized path Created-by: huzhipeng Commit-by: huzhipeng Merged-by: cann-robot Description: 变更摘要 此 PR 修复了稀疏 Flash Attention 梯度(SFAG)的非优化路径,主要引入了一套基于序列长度、块大小等条件的门控决策,用于在算子中切换优化/非优化 scatter 路径。当 enableOptimizedScatter 为 false 时,VecOp 和 CubeOp 各模块使用独立的非优化数据搬运、Gather 和 ScatterAdd 实现,涉及不同的内存布局、缓冲区大小、事件同步策略和偏移计算方式。 主要改动: 新增 OptimizedScatterGateDecision 门控决策:按 selectedBlockSize、N1、gateS1/gateS2、effectiveSelectedTokens 等阈值决定是否启用优化 scatter,并输出详细日志;确定性模式强制走非优化路径。 非优化路径和优化路径分离干净:UB 初始化布局、事件同步、workspace分配、nz转nd等均和优化路径独立 ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!7810 | 23 天前 | |
fix sfag non-optimized path Co-authored-by: huzhipeng<huzhipeng17@h-partners.com> # message auto-generated for no-merge-commit merge: !7810 merge 0617m into master fix sfag non-optimized path Created-by: huzhipeng Commit-by: huzhipeng Merged-by: cann-robot Description: 变更摘要 此 PR 修复了稀疏 Flash Attention 梯度(SFAG)的非优化路径,主要引入了一套基于序列长度、块大小等条件的门控决策,用于在算子中切换优化/非优化 scatter 路径。当 enableOptimizedScatter 为 false 时,VecOp 和 CubeOp 各模块使用独立的非优化数据搬运、Gather 和 ScatterAdd 实现,涉及不同的内存布局、缓冲区大小、事件同步策略和偏移计算方式。 主要改动: 新增 OptimizedScatterGateDecision 门控决策:按 selectedBlockSize、N1、gateS1/gateS2、effectiveSelectedTokens 等阈值决定是否启用优化 scatter,并输出详细日志;确定性模式强制走非优化路径。 非优化路径和优化路径分离干净:UB 初始化布局、事件同步、workspace分配、nz转nd等均和优化路径独立 ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!7810 | 23 天前 | |
sfag长序列优化 Co-authored-by: huzhipeng<huzhipeng17@h-partners.com> # message auto-generated for no-merge-commit merge: !6170 merge only_longseqop into master sfag长序列优化 Created-by: huzhipeng Commit-by: huzhipeng Merged-by: cann-robot Description: ## 描述 sfag长序列优化点 * scatter优化 优化后将 scatter 从t1末尾集中处理调整为随task逐步做 * MM45 fixp NZ出 + Vec上NzToNd * scatter过程中当两个相邻block的s2idx连续时,使用一次DataCopyPad一次写两个block * kernel 使用 'if constexpr'把确定性分支和非确定性分开,优化iCashiMiss ## 关联的Issue 关联Issue #2817 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [x] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6170 | 1 个月前 | |
修复SFAG同步问题与潜在风险 Co-authored-by: hz36amy_00<zhouyangfan8@huawei.com> # message auto-generated for no-merge-commit merge: !8445 merge sfag-0708 into master 修复SFAG同步问题与潜在风险 Created-by: hz36amy_00 Commit-by: hz36amy_00 Merged-by: cann-robot Description: ## 描述 1、修复 runInfo中scatterTmpK/VMte2WaitV eventId未赋值导致的偶现卡死问题 2、修复tilingdata字段未对齐潜在风险 3、修复性能优化分支下NzToNd MTE3->V的同步,提升性能 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!8445 | 16 天前 |