Can Asymmetric Tile Buffering Be Beneficial?
Chengyue Wang, Wesley Pang, Xinrui Wu, Gregory Jun, Luis Romero, Endri Taka, Diana Marculescu, Tony Nowatzki, Pranathi Vasireddy, Joseph Melber, Deming Chen, Jason Cong
TL;DR
This work introduces asymmetric tile buffering (ATB) for GEMM, decoupling the buffered dimensions of A and C to raise arithmetic intensity while reducing input-buffer pressure. It develops a coupled analytical model of arithmetic intensity and instruction-level parallelism to guide tiling and microkernel optimization, including double buffering and input-sharing strategies. Empirical evaluation on AMD XDNA2 AIE demonstrates up to 4.54× speedup over symmetric buffering and substantial gains over state-of-the-art baselines across mixed-precision configurations, including BF16/BFP16. The findings show ATB can shift performance from memory-bound toward compute-bound regimes and establish practical guidelines for tiling, kernel design, and mixed-precision GEMM on reconfigurable NPUs.
Abstract
General matrix multiplication (GEMM) is the computational backbone of modern AI workloads, and its efficiency is critically dependent on effective tiling strategies. Conventional approaches employ symmetric tile buffering, where the buffered tile size of the input $A$ along the dimension $M$ matches the output tile size of $C$. In this paper, we introduce asymmetric tile buffering (ATB), a simple but powerful technique that decouples the buffered tile dimensions of the input and output operands. We show, for the first time, that ATB is both practical and highly beneficial. To explain this effect, we develop a performance model that incorporates both the benefits of ATB (higher arithmetic intensity) and its overheads (higher kernel switching costs), providing insight into how to select effective ATB tiling factors. As a case study, we apply ATB to AMD's latest XDNA2 AI Engine (AIE), achieving up to a 4.54x speedup, from 4.8 to 24.6 TFLOPS on mixed-precision BFP16--BF16 GEMM, establishing a new performance record for XDNA2 AIE.
