已关闭
[Requirement|需求建议]: Ascend950 支持 add_row_ranges 算子 #4326
Wangdongxu_mj007创建于  7月25日关闭于  7月27日
Wangdongxu_mj007
Wangdongxu_mj007
7月25日 创建

Thanks for sending an requirement! Please fill in the following template to help quickly solve your problem.

Backgroud(背景信息)

add_row_ranges 算子对矩阵 x 的每一行 r,将矩阵 src 中由 indices 指定的行范围 [start, end) 进行按列求和,并累加到 x 的对应行上。该算子源自 Kaldi 语音识别框架中的 AddRowRanges 操作,主要用于语音处理中的特征矩阵行范围累加。

Origin(信息来源)

昇腾解决方案开发部

Benefit / Necessity (价值/作用)

Kaldi 小规模 (7, 7) float32 (11, 7) float32 (7, 2) int32 (7, 7) float32 Kaldi UT
Kaldi 大列 (16, 2049) float32 (16, 2049) float32 (16, 2) int32 (16, 2049) float32 Kaldi UT
Kaldi 大行 (1024, 32) float32 (1024, 32) float32 (1024, 2) int32 (1024, 32) float32 Kaldi UT
Kaldi 超大规模 (1600, 160) float32 (1600, 160) float32 (1600, 2) int32 (1600, 160) float32 Kaldi UT
FP16 混合精度 (512, 256) float16 (512, 256) float16 (512, 2) int32 (512, 256) float16 A2/A3 扩展

Design(设计方案)

1 读取输入矩阵 x (M×N)、src (K×N)、indices (M×2)
2 输出矩阵 x_out 初始化为 x 的副本
3 对每一行 r (0 ≤ r < M):
- 读取 start = indices[r, 0],end = indices[r, 1]
- 若 start >= end 或 start == -1 或 end == -1,跳过该行
- 否则,对每一列 c (0 ≤ c < N):x_out(r, c) += sum(src(start:end, c))
4 输出 x_out

likedislike
yuning_chenyuning_chen成员
7月25日 将 magicjason0007 设为负责人
CANN-robotCANN-robot成员
7月27日 关闭了 issue
CANN-robotCANN-robot成员
7月27日 添加了label:resolved