文件最后提交记录最后更新时间
新增mambav2 推理prefill阶段所需的关键算子 Co-authored-by: Jing_Huang66<huangjing66@huawei.com> # message auto-generated for no-merge-commit merge: !459 merge mamba2 into master 新增mambav2 推理prefill阶段所需的关键算子 Created-by: Jing_Huang66 Commit-by: Jing_Huang66 Merged-by: cann-robot Description: ## 描述 新增mambav2 推理prefill阶段所需的关键算子, 包含6个融合算子: - mamba2_causal_conv1d - mamba2_rmsnormgated - mamba2_chunk_cumsum - mamba2_chunk_state - mamba2_chunk_state_passing - mamba2_chunk_scan ## 关联的Issue 关联Issue [#221](https://gitcode.com/cann/ops-transformer/issues/221) ## 测试 各算子完成精度和性能测试,参考各算子的test脚本 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!4592 个月前
新增mambav2 推理prefill阶段所需的关键算子 Co-authored-by: Jing_Huang66<huangjing66@huawei.com> # message auto-generated for no-merge-commit merge: !459 merge mamba2 into master 新增mambav2 推理prefill阶段所需的关键算子 Created-by: Jing_Huang66 Commit-by: Jing_Huang66 Merged-by: cann-robot Description: ## 描述 新增mambav2 推理prefill阶段所需的关键算子, 包含6个融合算子: - mamba2_causal_conv1d - mamba2_rmsnormgated - mamba2_chunk_cumsum - mamba2_chunk_state - mamba2_chunk_state_passing - mamba2_chunk_scan ## 关联的Issue 关联Issue [#221](https://gitcode.com/cann/ops-transformer/issues/221) ## 测试 各算子完成精度和性能测试,参考各算子的test脚本 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!4592 个月前
新增mambav2 推理prefill阶段所需的关键算子 Co-authored-by: Jing_Huang66<huangjing66@huawei.com> # message auto-generated for no-merge-commit merge: !459 merge mamba2 into master 新增mambav2 推理prefill阶段所需的关键算子 Created-by: Jing_Huang66 Commit-by: Jing_Huang66 Merged-by: cann-robot Description: ## 描述 新增mambav2 推理prefill阶段所需的关键算子, 包含6个融合算子: - mamba2_causal_conv1d - mamba2_rmsnormgated - mamba2_chunk_cumsum - mamba2_chunk_state - mamba2_chunk_state_passing - mamba2_chunk_scan ## 关联的Issue 关联Issue [#221](https://gitcode.com/cann/ops-transformer/issues/221) ## 测试 各算子完成精度和性能测试,参考各算子的test脚本 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!4592 个月前
doc Tools工具扫描问题修改 Co-authored-by: gitee-yanglulu<yanglulul@h-partners.com> # message auto-generated for no-merge-commit merge: !3432 merge master into master doc Tools工具扫描问题修改 Created-by: gitee-yanglulu Commit-by: gitee-yanglulu Merged-by: cann-robot Description: doc Tools工具扫描问题修改 See merge request: cann/ops-transformer!34322 个月前
新增mambav2 推理prefill阶段所需的关键算子 Co-authored-by: Jing_Huang66<huangjing66@huawei.com> # message auto-generated for no-merge-commit merge: !459 merge mamba2 into master 新增mambav2 推理prefill阶段所需的关键算子 Created-by: Jing_Huang66 Commit-by: Jing_Huang66 Merged-by: cann-robot Description: ## 描述 新增mambav2 推理prefill阶段所需的关键算子, 包含6个融合算子: - mamba2_causal_conv1d - mamba2_rmsnormgated - mamba2_chunk_cumsum - mamba2_chunk_state - mamba2_chunk_state_passing - mamba2_chunk_scan ## 关联的Issue 关联Issue [#221](https://gitcode.com/cann/ops-transformer/issues/221) ## 测试 各算子完成精度和性能测试,参考各算子的test脚本 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!4592 个月前
README.md

mamba2_chunk_state 算子说明

功能和实现说明

mamba2_chunk_state 用于在 MambaV2 Prefill 阶段进行 chunk 内的离散时间状态更新,根据 chunk_cumsum 得到的累积量dacs/dacs_chunk和状态更新因子dtout进行状态递推,输出 chunk 内每一步的状态序列,并生成用于下一 chunk 的最终隐藏状态。本算子实现为 Vector+cube 融合算子,支持 FP16/FP32。

计算流

Kernel输入输出(I/O)

输入

Tensor shape dtype
dtout BCLH FP32
dacs BCLH FP32
bt BCLGN FP16
xt BCLHP FP16

输出

Tensor shape dtype
states BCHNP FP32

参数说明:

B: batch size
C: number of chunks
L: chunk size
H: number of head
G: ngroups
N: state size
P: head dim
其中C*L为padding后的序列长度

调用方式

import npu_ops_transformer_ext

out = torch.ops.npu_ops_transformer_ext.mamba2_chunk_state(dtout, dacs, bt, xt)

测试方法

见当前目录 tests/

python test_chunk_state.py