SGEMM-cube:基于 FP16 矩阵引擎的Ascend NPU 精度恢复 FP32 GEMM 近似
分布式、并行与集群计算
2026-05-07 v4
摘要
现代 AI 加速器提供高吞吐低精度矩阵引擎,但其对 FP32 GEMM 的支持往往有限或效率低下。本文提出 SGEMM-cube,这是一种在Ascend NPU上使用 FP16 Cube 单元实现的精度恢复 FP32 GEMM 近似方法。该方法不声称实现位精确的 FP32 近似,而是针对输入幅值在 FP16 动态范围内可表示的样本,目标是实现接近 FP32 的精度。该方法遵循两种风格的 FP32 到 FP16 分解策略(Ozaki 式和 Ootomo 式):将每个 FP32 操作数表示为 FP16 高分量和缩放后的 FP16 残差分量,矩阵乘积由主导的高-高 项和高-低 项重构,忽略低-低 项。本文的主要贡献并非提出新的分解范式,而是对该精度恢复方案在Ascend NPU上的架构特定实现与分析。我们分析了在Ascend执行模型下,舍入到最近转换、下溢、残差缩放以及累加顺序的影响,阐明了该方法的范围和精度限制。我们进一步适配了标准高性能 GEMM 技术,包括 L1 感知分块和双缓冲流水线,以适应Ascend NPU的软件管理内存层次结构。在Ascend 910A上的实验表明,SGEMM-cube 比本地 FP16 GEMM 恢复了显著更高的精度,并且对于中等范围输入可接近 FP32 SGEMM 精度,实现最高达65.3 TFLOP/s,相当于三倍 GEMM 分解成本下 FP32 等效峰值的77%。这些结果表明,在明确管理其范围、误差和实现约束的前提下,FP32 精度 GEMM 近似在 FP16-only NPU 矩阵引擎上是实用的。
关键词
引用
@article{arxiv.2507.23387,
title = {SGEMM-cube: Precision-Recovery FP32 GEMM Approximation on Ascend NPUs with FP16 Matrix Engines},
author = {Weicheng Xue and Baisong Xu and Kai Yang and Yongxiang Liu and Dengdeng Fan and Pengxiang Xu and Yonghong Tian},
journal= {arXiv preprint arXiv:2507.23387},
year = {2026}
}