| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
【stemIndexer】si medatada算子拦截逻辑和主算子保持一致 Co-authored-by: skykone1<dingfei19@huawei.com> # message auto-generated for no-merge-commit merge: !10587 merge si_fix_log into master 【stemIndexer】si medatada算子拦截逻辑和主算子保持一致 Created-by: skykone1 Commit-by: skykone1 Merged-by: cann-robot Description: ## 修改背景 StemIndexerMetadata与StemIndexer主算子的部分参数约束不一致: - qHeads、kvHeads仅校验大于0,未限制支持范围。 - dimQkflat仅校验大于0,与主算子固定2048的规格不一致。 - windowSize仅校验非负,与主算子固定为4的规格不一致。 - qSeqLens、kvSeqLens缺少rank、dtype及Batch上限校验。 - PyTorch Schema和图模式Converter中,dim_qkflat默认值仍为128,与当前Dflat=2048的规格不一致。 上述问题可能导致Metadata生成阶段接受主算子不支持的参数,错误延迟至主算子执行阶段;二维SeqLens还可能导致输出容量计算使用的Batch与AICPU实际处理的元素数量不一致。 ## 修改内容 1. 对齐StemIndexerMetadata参数约束: - qHeads仅支持32或64。 - kvHeads仅支持2、4或8。 - dimQkflat固定为2048。 - windowSize固定为4。 - qSeqLens和kvSeqLens必须为非空1D INT32 Tensor。 - qSeqLens和kvSeqLens长度必须一致。 - Batch大小不超过65536。 2. 保持Metadata现有日志风格: - 继续使用OP_LOGE和ACLNN_ERR_PARAM_INVALID。 - 错误日志明确打印支持范围及当前异常值。 3. 修正Metadata接口默认值: - PyTorch Schema中的dim_qkflat默认值由128改为2048。 - 图模式Converter中的dim_qkflat默认值同步改为2048。 4. 同步Metadata正向测试配置: - qHeads改为32。 - kvHeads改为2。 See merge request: cann/ops-transformer!10587 | 1 个月前 | |
[LoadBalance] OutputLayout参数改名为KernelSplitMode Co-authored-by: ChengjiaWu<wuchengjia1@h-partners.com> # message auto-generated for no-merge-commit merge: !13416 merge master into master [LoadBalance] OutputLayout参数改名为KernelSplitMode Created-by: ChengjiaWu Commit-by: ChengjiaWu Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> OutputLayout参数改名为KernelSplitMode ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> Issue [#5841](https://gitcode.com/cann/ops-transformer/issues/5841) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [x] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!13416 | 17 天前 | |
【stemIndexer】si medatada算子拦截逻辑和主算子保持一致 Co-authored-by: skykone1<dingfei19@huawei.com> # message auto-generated for no-merge-commit merge: !10587 merge si_fix_log into master 【stemIndexer】si medatada算子拦截逻辑和主算子保持一致 Created-by: skykone1 Commit-by: skykone1 Merged-by: cann-robot Description: ## 修改背景 StemIndexerMetadata与StemIndexer主算子的部分参数约束不一致: - qHeads、kvHeads仅校验大于0,未限制支持范围。 - dimQkflat仅校验大于0,与主算子固定2048的规格不一致。 - windowSize仅校验非负,与主算子固定为4的规格不一致。 - qSeqLens、kvSeqLens缺少rank、dtype及Batch上限校验。 - PyTorch Schema和图模式Converter中,dim_qkflat默认值仍为128,与当前Dflat=2048的规格不一致。 上述问题可能导致Metadata生成阶段接受主算子不支持的参数,错误延迟至主算子执行阶段;二维SeqLens还可能导致输出容量计算使用的Batch与AICPU实际处理的元素数量不一致。 ## 修改内容 1. 对齐StemIndexerMetadata参数约束: - qHeads仅支持32或64。 - kvHeads仅支持2、4或8。 - dimQkflat固定为2048。 - windowSize固定为4。 - qSeqLens和kvSeqLens必须为非空1D INT32 Tensor。 - qSeqLens和kvSeqLens长度必须一致。 - Batch大小不超过65536。 2. 保持Metadata现有日志风格: - 继续使用OP_LOGE和ACLNN_ERR_PARAM_INVALID。 - 错误日志明确打印支持范围及当前异常值。 3. 修正Metadata接口默认值: - PyTorch Schema中的dim_qkflat默认值由128改为2048。 - 图模式Converter中的dim_qkflat默认值同步改为2048。 4. 同步Metadata正向测试配置: - qHeads改为32。 - kvHeads改为2。 See merge request: cann/ops-transformer!10587 | 1 个月前 | |
[Feature] 添加 StemIndexer 算子 Co-authored-by: hanggongmao1<hanggongmao1@huawei.com> # message auto-generated for no-merge-commit merge: !8032 merge stem_indexer into master [Feature] 添加 StemIndexer 算子 Created-by: hanggongmao1 Commit-by: hanggongmao1 Merged-by: cann-robot Description: ## 描述 新增 experimental 目录下 StemIndexer 算子及 StemIndexerMetadata 辅助算子实现。 主要改动包括: - 新增 StemIndexer host 侧注册、InferShape、Tiling、AICore 配置。 - 新增 StemIndexer device 侧 arch35 kernel、cube、vector、topk 相关实现。 - 新增 StemIndexerMetadata AICPU 辅助算子,用于生成 StemIndexer kernel 所需 metadata。 - 新增 PyTorch Extension 调用封装。 - 新增 UT、pytest 单用例/批量用例、golden 计算和测试用例表。 - 根据检视意见清理 QLI 残留命名、文档、常量、headDim 处理、arch35 编译保护和格式问题。 ## 关联的Issue 无 ## 测试 - 950 环境:StemIndexer pytest 用例验证通过。 - 910B 环境:host 侧 InferShape/Tiling UT 验证通过。 - CI 前置检查: git diff --check 通过。 ## 文档更新 新增/更新 StemIndexer 相关 README: - experimental/attention/stem_indexer/README.md - experimental/attention/stem_indexer_metadata/README.md - experimental/attention/stem_indexer/tests/pytest/README.md ## 类型标签 - [ ] 🐛 Bug修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [x] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!8032 | 3 个月前 | |
【stemIndexer】si medatada算子拦截逻辑和主算子保持一致 Co-authored-by: skykone1<dingfei19@huawei.com> # message auto-generated for no-merge-commit merge: !10587 merge si_fix_log into master 【stemIndexer】si medatada算子拦截逻辑和主算子保持一致 Created-by: skykone1 Commit-by: skykone1 Merged-by: cann-robot Description: ## 修改背景 StemIndexerMetadata与StemIndexer主算子的部分参数约束不一致: - qHeads、kvHeads仅校验大于0,未限制支持范围。 - dimQkflat仅校验大于0,与主算子固定2048的规格不一致。 - windowSize仅校验非负,与主算子固定为4的规格不一致。 - qSeqLens、kvSeqLens缺少rank、dtype及Batch上限校验。 - PyTorch Schema和图模式Converter中,dim_qkflat默认值仍为128,与当前Dflat=2048的规格不一致。 上述问题可能导致Metadata生成阶段接受主算子不支持的参数,错误延迟至主算子执行阶段;二维SeqLens还可能导致输出容量计算使用的Batch与AICPU实际处理的元素数量不一致。 ## 修改内容 1. 对齐StemIndexerMetadata参数约束: - qHeads仅支持32或64。 - kvHeads仅支持2、4或8。 - dimQkflat固定为2048。 - windowSize固定为4。 - qSeqLens和kvSeqLens必须为非空1D INT32 Tensor。 - qSeqLens和kvSeqLens长度必须一致。 - Batch大小不超过65536。 2. 保持Metadata现有日志风格: - 继续使用OP_LOGE和ACLNN_ERR_PARAM_INVALID。 - 错误日志明确打印支持范围及当前异常值。 3. 修正Metadata接口默认值: - PyTorch Schema中的dim_qkflat默认值由128改为2048。 - 图模式Converter中的dim_qkflat默认值同步改为2048。 4. 同步Metadata正向测试配置: - qHeads改为32。 - kvHeads改为2。 See merge request: cann/ops-transformer!10587 | 1 个月前 |
StemIndexerMetadata
StemIndexerMetadata generates metadata used by StemIndexer to describe work partition information.
For the StemIndexer operator usage, see StemIndexer.