Thanks for sending an requirement! Please fill in the following template to help quickly solve your problem.
新增 weight_quant_matmul_mxfp8fp4 权重量化矩阵乘样例,支持 MXFP8 输入、packed MXFP4 NZ 权重、E8M0 scale、BF16 输出的矩阵乘计算。
weight_quant_matmul_mxfp8fp4
展示 MXFP8 + MXFP4 权重量化矩阵乘在 Ascend C 上的完整实现路径,可作为低比特权重量化矩阵乘的参考样例。
<<<>>>直调
host 侧主要包括:
WeightQuantMatmulMxfp8Fp4TilingData
WeightQuantMatmulMxfp8Fp4SwatTiling
kernel 侧主要包括:
GemmUniversal
BlockMmad
WeightQuantMatmulMxfp8Fp4DispatchPolicy<L1_BUF_NUM>
Ascend950
当前样例约束:
m k n
transA
transB
m > 0
k > 0
n > 0
k
n
💡 备注(选填)
Thanks for sending an requirement! Please fill in the following template to help quickly solve your problem.
一、背景信息 (必填)
新增
weight_quant_matmul_mxfp8fp4权重量化矩阵乘样例,支持 MXFP8 输入、packed MXFP4 NZ 权重、E8M0 scale、BF16 输出的矩阵乘计算。二、价值/作用 (必填)
展示 MXFP8 + MXFP4 权重量化矩阵乘在 Ascend C 上的完整实现路径,可作为低比特权重量化矩阵乘的参考样例。
三、设计方案 (必填)
3.1 使能方式(涉及哪些框架:如Aclnn直调、Pytorch训练等)
<<<>>>直调
3.2 总体设计
3.2.1 算子支持的数据类型
3.2.2 host侧设计
host 侧主要包括:
WeightQuantMatmulMxfp8Fp4TilingData,序列化 kernel 所需 tiling 字段。WeightQuantMatmulMxfp8Fp4SwatTiling,基于 SWAT-derived 策略生成 tiling。3.2.3 kernel侧设计
kernel 侧主要包括:
GemmUniversalprimary template,并为 MXFP8FP4 实现特化。BlockMmad特化,负责 L1/L0 tensor 构造、MMAD 计算和 C 输出。WeightQuantMatmulMxfp8Fp4DispatchPolicy<L1_BUF_NUM>控制。3.3 支持硬件
Ascend950
3.4 算子约束限制
当前样例约束:
m k n,不支持transA/transB参数。m > 0,k > 0,n > 0。k必须为 64 的倍数。n必须为 16 的倍数。💡 备注(选填)