[論文レビュー] Efficient Realization of Givens Rotation through Algorithm-Architecture Co-design for Acceleration of QR Factorization
本稿では、古典的ギブンズ回転のアルゴリズム的一般化である一般化ギブンズ回転(GGR)を提案する。GGRは、複数の行列要素を同時に消去することで、乗算回数を33%削減し、並列性を向上させる。アルゴリズム・アーキテクチャ共同最適化により、プロセッシングエレメント(PE)と密接に結合された再構成可能データパスに効率的に実装され、REDEFINEの粗粒度再構成可能アーキテクチャ全体にスケーリングされ、最先端のマルチコアおよびGPGPU実装と比較して3–100倍のGflops/watt性能を達成した。
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.
研究の動機と目的
- 密行列線形代数における古典的ギブンズ回転(GR)の性能制限を克服するため、行および列にまたがる複数の行列要素を同時に消去できるようにGRを一般化すること。
- 従来のマルチコアCPUおよびGPGPUプラットフォームにおけるGRベースのQR分解における並列性の未利用と高い計算コストの問題に対処すること。
- 特にQR分解のような密行列線形代数演算を、粗粒度再構成可能アーキテクチャ(CGRAs)のようなカスタマイズ可能なハードウェアを用いて高速化するためのアルゴリズム・アーキテクチャ共同最適化を検討すること。
- GGRが、カスタムアクセラレータ上で、MHTおよび標準GEMM(gemm)よりもエネルギー効率とパフォーマンスで優れていることを実証すること。
- REDEFINE CGRAプラットフォームを用いて、GGRのスケーラビリティとパフォーマンスをさまざまなハードウェア構成で検証すること。
提案手法
- 複数の行および列の要素を同時に消去できるように、古典的ギブンズ回転の拡張として一般化ギブンズ回転(GGR)を提案し、必要な乗算回数を33%削減すること。
- 回転角度の計算や行列更新といったGGRの主要なマクロ演算を、プロセッシングエレメント(PE)パイプラインと密接に結合された再構成可能データパス(RDP)に同定および実装すること。
- 命令レベル並列性と最適化されたデータフローを用いて、カスタムPE上でGGRを実装し、理論ピーク性能の82%を達成すること。
- GGR最適化PEをREDEFINEの粗粒度再構成可能アーキテクチャ(CGRA)内にカスタム機能ユニット(CFU)として統合し、スケーラブルな並列実行を実現すること。
- 2×2、3×3、4×4などのさまざまなタイルアレイサイズに対応する高計算通信比を維持するための、REDEFINEにおける行列分割およびスケジューリング戦略を設計すること。
- REDEFINE環境において、dgeqr2ggrの後続行列更新にはDET2命令、dgeqrfggrにはGEMMを使用することで、パフォーマンスと既存カーネルとの互換性を維持すること。
実験結果
リサーチクエスチョン
- RQ1ギブンズ回転を、行および列にまたがる複数の要素を同時に消去できるように一般化することは可能か? これにより計算複雑度が低下し、並列性が向上するか?
- RQ2カスタムPE上で、提案された一般化ギブンズ回転(GGR)のパフォーマンスは、古典的ギブンズ回転および修正ヘッセルトランスフォーム(MHT)と比較して、エネルギー効率と計算スループットの面でどのように異なるか?
- RQ3GGRアルゴリズムは、REDEFINEのような大規模並列な粗粒度再構成可能アーキテクチャ上でどの程度スケーリング可能か? また、スループットはタイルアレイサイズに比例して線形に向上するか?
- RQ4GEMM(gemm)は一般用途アクセラレータ上で伝統的に最適化されているが、同じハードウェア上でのGflops/watt性能においてGGRがそれを上回るか?
- RQ5アルゴリズム・アーキテクチャ共同最適化の原則は、QR分解のような密行列線形代数カーネルに効果的に適用可能か? これにより、マルチコアおよびGPGPUプラットフォームにおけるBLAS/LAPACKライブラリで達成可能な性能やエネルギー効率を超える成果が得られるか?
主な発見
- GGRは、行および列にまたがる複数の要素を同時に消去することで、古典的ギブンズ回転と比較して乗算回数を33%削減した。
- カスタムプロセッシングエレメント(PE)上で、GGRは理論ピーク性能の82%を達成し、報告済みの最高性能の修正ヘッセルトランスフォーム(MHT)実装と比較して10%高いGflops/wattを達成した。
- PE上でのGGR実装は、市販のマルチコアおよびGPGPUプラットフォームと比較して、Gflops/wattで3–100倍の性能向上を示し、顕著なエネルギー効率の向上を実証した。
- REDEFINE CGRA環境では、GGRベースのdgeqr2ggrは、タイルアレイサイズ(K×K)に漸近的に近づくスピードアップを達成し、さまざまな構成で理論ピーク性能の最大78%にまで到達した。
- 同様のハードウェア上でのGGRは、標準GEMM(gemm)よりも10%高いGflops/wattを達成した。これは直感に反するが、本研究の文脈において、アルゴリズム・アーキテクチャ共同最適化の有効性を強力に示している。
- REDEFINE上での提案された行列分割およびスケジューリング戦略は、高い計算通信比を維持し、入力行列サイズおよびタイルアレイサイズの変化に対しても、スケーラブルかつリソースに準拠した実行を可能にした。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。