已关闭
[Requirement|需求建议]: 910b的zeros_like实现 #1692
zhaohujie创建于 5月28日关闭于 7月30日
zhaohujie
5月28日 评论:
5月28日 评论:
/assign @zhaohujie


5月28日 将 zhaohujie 设为负责人
5月28日 关联了pull request:feat(zeros_like): 新增 ascend910b (A2) AI Core 支持
6月2日 修改了issue 的描述
6月2日 关联了pull request:feat(zeros_like): 910b 新增算子实现 zeros_like
6月2日 修改标题为 “[Requirement|需求建议]: 910b的zeros_like实现”,原标题为“[Requirement|需求建议]: zeros_like增加910B实现”
6月2日 修改标题为 “[Requirement|需求建议]: 910b的zeros_like实现”,原标题为“[Requirement|需求建议]: zeros_like增加910B实现”
6月2日 修改了issue 的描述
一、背景信息 (必填)
为 Atlas A2 提供 ZerosLike 原生 AI Core 实现;退化 Elementwise(纯写常量 0、不读输入),可作为 A2 写出类 elementwise 算子参考;相比内建 legacy DSL,在 int64 等需类型仿真的场景显著更优(实测 [4096²] 41.56us vs 614.90us,≈14.8×),浮点/小字节场景与内置持平(均近器件写带宽极限)。
二、价值/作用 (必填)
为 Atlas A2 提供 ZerosLike 原生 AI Core 实现;退化 Elementwise(纯写常量 0、不读输入),可作为 A2 写出类 elementwise 算子参考;相比内建 legacy DSL,在 int64 等需类型仿真的场景显著更优(实测 [4096²] 41.56us vs 614.90us,≈14.8×),浮点/小字节场景与内置持平(均近器件写带宽极限)。
三、设计方案 (必填)
3.1 使能方式(涉及哪些框架:如Aclnn直调、Pytorch训练等)
3.2 总体设计
3.2.1 算子支持的数据类型
8 种 —— FLOAT16/BF16/FLOAT32/INT32/INT64/INT8/UINT8/BOOL(ND);按字节宽度归一 4 桶(1/2/4/8B)。
3.2.2 host侧设计
OpDef AddConfig("ascend910b")、formatAgnostic、opFile.value="zeros_like";InferShape 同形 / InferDataType 同 dtype;Tiling 按输出总字节数以 32B 对齐块多核均衡切分,字节宽度桶设 TilingKey,0 元素保护,workspace=0。
3.2.3 kernel侧设计
退化 Elementwise(纯写 0,不读 x)—— UB 单块 Duplicate(0) 复用 → DataCopy(对齐)/DataCopyPad(尾块)写出;按字节宽度选 uint16/uint32 视图(全 0 二进制等价),int64 拆 2×uint32;V_MTE3 同步;AIV-only。
3.3 支持硬件
Atlas A2 训练/推理系列(Ascend910B,DAV_2201 / arch32)。
3.4 算子约束限制
💡 备注(选填)