[论文解读] Efficient Realization of Givens Rotation through Algorithm-Architecture Co-design for Acceleration of QR Factorization
本文提出广义Givens旋转(GGR),这是一种经典Givens旋转的新型算法泛化,通过同时消除多个矩阵元素,将乘法次数减少33%,并实现更高的并行性。通过算法-架构协同设计,GGR在与处理单元(PE)紧密耦合的可重构数据通路中高效实现,并扩展至REDEFINE粗粒度可重构架构,其Gflops/watt性能相比最先进的多核和GPGPU实现高出3–100倍。
We present efficient realization of Generalized Givens Rotation (GGR) based QR factorization that achieves 3-100x better performance in terms of Gflops/watt over state-of-the-art realizations on multicore, and General Purpose Graphics Processing Units (GPGPUs). GGR is an improvement over classical Givens Rotation (GR) operation that can annihilate multiple elements of rows and columns of an input matrix simultaneously. GGR takes 33% lesser multiplications compared to GR. For custom implementation of GGR, we identify macro operations in GGR and realize them on a Reconfigurable Data-path (RDP) tightly coupled to pipeline of a Processing Element (PE). In PE, GGR attains speed-up of 1.1x over Modified Householder Transform (MHT) presented in the literature. For parallel realization of GGR, we use REDEFINE, a scalable massively parallel Coarse-grained Reconfigurable Architecture, and show that the speed-up attained is commensurate with the hardware resources in REDEFINE. GGR also outperforms General Matrix Multiplication (gemm) by 10% in-terms of Gflops/watt which is counter-intuitive.
研究动机与目标
- 通过将经典Givens旋转泛化为可同时消除行和列中多个矩阵元素,以克服其在密集线性代数计算中的性能局限。
- 解决在多核CPU和GPGPU等传统平台上的GR-based QR分解中并行性利用不足和计算成本过高的问题。
- 探索使用可定制硬件(如粗粒度可重构架构,CGRAs)加速密集线性代数运算(特别是QR分解)的算法-架构协同设计方法。
- 证明GGR在定制加速器上相比Modified Householder Transform(MHT)和标准GEMM(gemm)在能效和性能方面更具优势。
- 通过REDEFINE CGRA平台验证GGR在不同硬件配置下的可扩展性和性能表现。
提出的方法
- 提出广义Givens旋转(GGR)作为经典Givens旋转的扩展,可同时消除行和列中的多个元素,使所需乘法次数减少33%。
- 在与处理单元(PE)流水线紧密耦合的可重构数据通路(RDP)上,识别并实现GGR的关键宏操作(如旋转角度计算和矩阵更新)。
- 在定制PE上实现GGR,利用指令级并行性和优化数据流,达到理论峰值性能的82%。
- 将优化后的GGR-PE作为自定义功能单元(CFU)集成至REDEFINE粗粒度可重构架构(CGRA)中,实现可扩展的并行执行。
- 为REDEFINE设计矩阵分块与调度策略,保持高计算-通信比,并确保在不同Tile阵列尺寸(2×2、3×3、4×4)下的可扩展性。
- 在REDEFINE环境中,使用DET2指令实现dgemqr2ggr的尾部矩阵更新,使用GEMM实现dgemqrfggr,以保持性能和与现有内核的兼容性。
实验结果
研究问题
- RQ1Givens旋转能否被泛化为同时消除行和列中的多个元素,从而降低计算复杂度并提升并行性?
- RQ2在定制PE上,所提出的广义Givens旋转(GGR)与经典Givens旋转及修正Householder变换(MHT)相比,在能效和计算吞吐量方面表现如何?
- RQ3GGR算法在类似REDEFINE的大型并行粗粒度可重构架构上可扩展到何种程度?加速比是否随Tile阵列尺寸线性增长?
- RQ4尽管GEMM在通用加速器上通常更优化,GGR在Gflops/watt方面是否仍优于标准GEMM(gemm)?
- RQ5算法-架构协同设计原则是否可有效应用于QR分解等密集线性代数内核,以实现超越多核和GPGPU平台BLAS/LAPACK库性能与能效的突破?
主要发现
- 通过同时消除行和列中的多个元素,GGR相比经典Givens旋转将乘法次数减少了33%。
- 在定制处理单元(PE)上,GGR达到理论峰值性能的82%,且相比最佳报告的修正Householder变换(MHT)实现,能效高出10%。
- 在PE上的GGR实现相比市售多核和GPGPU平台,在Gflops/watt方面提升3–100倍,展现出显著的能效优势。
- 在REDEFINE CGRA环境中,基于GGR的dgemqr2ggr实现的加速比渐近逼近完整的Tile阵列尺寸(K×K),在不同配置下性能最高达到理论峰值的78%。
- 在相同硬件上,GGR相比标准GEMM(gemm)在Gflops/watt方面高出10%,这一结果出人意料,凸显了在此背景下算法-架构协同设计的有效性。
- 所提出的REDEFINE上的矩阵分块与调度策略保持了高计算-通信比,实现了在不同输入矩阵尺寸和Tile阵列尺寸下的可扩展、资源合规执行。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。