Thanks for sending an requirement! Please fill in the following template to help quickly solve your problem.
Ascend 950上新增算子Cummin,计算self中的累积最小值,并返回最小值以及对应的索引。
Cummin算子,基础算子。
Aclnn、pytorch单算子
int32,fp32,fp16,bf16
根据dim值合轴成为[M,R,N], tiling key策略 根据N轴的大小,进行切分,分为R,N全载, N全载, N不能全载。 分核策略: 1.先将M切分,平均分到每个核上 2.对剩余M切分, 并切分N轴,将计算数量平均分到所有核上。
分为Init和Process两个阶段,其中Process阶段分为3个过程: 1.搬入 2.计算最小值 3.搬出
Ascend 950
无 💡 备注(选填)
Thanks for sending an requirement! Please fill in the following template to help quickly solve your problem.
一、背景信息 (必填)
Ascend 950上新增算子Cummin,计算self中的累积最小值,并返回最小值以及对应的索引。
二、价值/作用 (必填)
Cummin算子,基础算子。
三、设计方案 (必填)
3.1 使能方式(涉及哪些框架:如Aclnn直调、Pytorch训练等)
Aclnn、pytorch单算子
3.2 总体设计
3.2.1 算子支持的数据类型
int32,fp32,fp16,bf16
3.2.2 host侧设计
根据dim值合轴成为[M,R,N],
tiling key策略
根据N轴的大小,进行切分,分为R,N全载, N全载, N不能全载。
分核策略:
1.先将M切分,平均分到每个核上
2.对剩余M切分, 并切分N轴,将计算数量平均分到所有核上。
3.2.3 kernel侧设计
分为Init和Process两个阶段,其中Process阶段分为3个过程:
1.搬入
2.计算最小值
3.搬出
3.3 支持硬件
Ascend 950
3.4 算子约束限制
无
💡 备注(选填)