Skip to main content
QUICK REVIEW

[論文レビュー] MPU: Towards Bandwidth-abundant SIMT Processor via Near-bank Computing

Xinfeng Xie, Peng Gu|arXiv (Cornell University)|Mar 11, 2021
Parallel Computing and Optimization Techniques参考文献 64被引用数 4
ひとこと要約

MPUは、3次元積層近接バンク計算を基盤とする、初めてのSIMTプロセッサを提案する。ハイブリッドパイプラインを用いて、TSVの通信量を最小限に抑えながら、命令を近接バンクユニットにオフロードする。アーキテクチャ的最適化とエンドツーエンドのCUDA互換コンパイルフローにより、データ集約的ワークロードにおいてNVIDIA Tesla V100よりも3.46倍のスループット向上と2.57倍のエネルギー効率向上を達成する。

ABSTRACT

With the growing number of data-intensive workloads, GPU, which is the state-of-the-art single-instruction-multiple-thread (SIMT) processor, is hindered by the memory bandwidth wall. To alleviate this bottleneck, previously proposed 3D-stacking near-bank computing accelerators benefit from abundant bank-internal bandwidth by bringing computations closer to the DRAM banks. However, these accelerators are specialized for certain application domains with simple architecture data paths and customized software mapping schemes. For general purpose scenarios, lightweight hardware designs for diverse data paths, architectural supports for the SIMT programming model, and end-to-end software optimizations remain challenging. To address these issues, we propose MPU (Memory-centric Processing Unit), the first SIMT processor based on 3D-stacking near-bank computing architecture. First, to realize diverse data paths with small overheads while leveraging bank-level bandwidth, MPU adopts a hybrid pipeline with the capability of offloading instructions to near-bank compute-logic. Second, we explore two architectural supports for the SIMT programming model, including a near-bank shared memory design and a multiple activated row-buffers enhancement. Third, we present an end-to-end compilation flow for MPU to support CUDA programs. To fully utilize MPU's hybrid pipeline, we develop a backend optimization for the instruction offloading decision. The evaluation results of MPU demonstrate 3.46x speedup and 2.57x energy reduction compared with an NVIDIA Tesla V100 GPU on a set of representative data-intensive workloads.

研究の動機と目的

  • 3次元積層DRAMにおける近接バンク計算を活用することで、GPUワークロードにおけるメモリ帯域幅の壁を克服する。
  • 従来のドメイン特化型設計の制限を克服し、一般用途でプログラム可能な近接バンクアクセラレータ上でデータ集約的ワークロードを実行可能にする。
  • 近接バンク共有メモリや複数のアクティブ化されたロウバッファといったアーキテクチャ的機能を備えたSIMTプログラミングモデルをサポートする。
  • MPUアーキテクチャ上で、既存のCUDAプログラムをスムーズに移植・最適化できるエンドツーエンドのコンパイルフローを開発する。
  • 複雑な制御論理をベースダイに保持しつつ、軽量な命令のみをDRAMダイにオフロードすることで、TSV通信量と面積オーバーヘッドを最小限に抑える。

提案手法

  • コンパイラのヒントやランタイムポリシーに基づき、選択された命令を近接バンクユニット(NBUs)にオフロードするハイブリッドSIMTパイプラインを設計。命令フェッチ、デコード、発行はベースロジックダイで実行される。
  • 動的判断を可能にするため、命令オフロードエンジンを実装。TSV間のレジスタ移動を削減する。
  • オフチップデータ移動を削減し、スレッド間通信の効率を向上させるために、近接バンク共有メモリを導入。
  • 複数のアクティブ化されたロウバッファを活用し、動的ワープスケジューリング下でも高いDRAMバンク内帯域幅を維持する。
  • CUDAカーネルを静的に解析し、命令の配置先(近接バンク vs. ベースダイ)をアノテートするバックエンドコンパイラ最適化を開発。
  • MPU専用のメモリ空間を採用。共有メモリの整合性やホストアクセスの競合問題を回避する。

実験結果

リサーチクエスチョン

  • RQ1面積およびTSVオーバーヘッドを最小限に抑えながら、3次元積層近接バンク計算を活用した一般用途のSIMTプロセッサを効率的に実装できるか?
  • RQ2特に共有メモリとワープスケジューリングに関して、近接バンクアーキテクチャにおいてSIMTプログラミングモデルを効率的にサポートできるか?
  • RQ3特定の命令タイプを近接バンクユニットにオフロードした場合、プログラムの正しさを保ちつつ、性能およびエネルギー効率にどのような影響を与えるか?
  • RQ4エンドツーエンドのソフトウェア支援、特にCUDA互換コンパイルフローにより、データ集約的ワークロードにおける近接バンク計算の潜在能力はどの程度解き放てるか?
  • RQ5MPUのハイブリッドパイプラインおよびアーキテクチャ的最適化は、既存の3次元積層GPUおよび近データプラットフォームと比較して、帯域幅利用効率と効率性においてどのように差をつけるか?

主な発見

  • MPUは、代表的なデータ集約的ワークロードにおいて、NVIDIA Tesla V100 GPU比で3.46倍のスループット向上を達成し、顕著な性能向上を示した。
  • MPUのエネルギー効率はV100比で2.57倍向上した。主にデータ移動の削減とバンク内帯域幅の効率的利用によるものである。
  • ハイブリッドパイプライン設計により、軽量な命令のみをDRAMダイにオフロードすることで、TSV通信量が削減され、面積およびエネルギーオーバーヘッドが最小限に抑えられた。
  • 近接バンク共有メモリにより、オフチップデータ移動が削減され、スレッド間通信の効率と全体の帯域幅利用効率が向上した。
  • 複数のアクティブ化されたロウバッファ設計により、動的ワープスケジューリング下でも高いDRAM帯域幅を維持でき、ロウバッファのフラッシュ(フラッシュ攻撃)を防止した。
  • エンドツーエンドのCUDAコンパイルフローにより、既存のカーネルを透明に移植可能にし、バックエンド最適化により命令オフロードの意思決定を改善することで、性能向上が実現した。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。