[論文レビュー] SCALE-Sim: Systolic CNN Accelerator Simulator
SCALE-Sim は、データフロー、配列形状、メモリ容量、およびシステム統合が性能とエネルギーに与える影響を探索できる、オープンソースのサイクル正確な systolic-array CNN アクセラレータ用シミュレータです。
Systolic Arrays are one of the most popular compute substrates within Deep Learning accelerators today, as they provide extremely high efficiency for running dense matrix multiplications. However, the research community lacks tools to insights on both the design trade-offs and efficient mapping strategies for systolic-array based accelerators. We introduce Systolic CNN Accelerator Simulator (SCALE-Sim), which is a configurable systolic array based cycle accurate DNN accelerator simulator. SCALE-Sim exposes various micro-architectural features as well as system integration parameters to the designer to enable comprehensive design space exploration. This is the first systolic-array simulator tuned for running DNNs to the best of our knowledge. Using SCALE-Sim, we conduct a suite of case studies and demonstrate the effect of bandwidth, data flow and aspect ratio on the overall runtime and energy of Deep Learning kernels across vision, speech, text, and games. We believe that these insights will be highly beneficial to architects and ML practitioners.
研究の動機と目的
- シ systolic-array CNN アクセラレータの設計パラメータとそれらの相互作用を特定する。
- 迅速な設計空間探索のための、サイクル正確でオープンソースのツールを提供する。
- データフロー、メモリ容量、配列形状、システム統合が、CNN ワークロード全体の性能とエネルギーに与える影響を示す。
提案手法
- 行列-行列、行列-ベクトル、およびベクトル-ベクトル演算を実行できる MAC ユニットのサイストリック2Dアレイとしてモデル化する。
- 3 種類のデータフロー(Output Stationary、Weight Stationary、Input Stationary)をサポートし、それらの再利用と帯域幅への影響を把握する。
- 遅延を隠蔽するために、3 つの論理パーティション(IFMAP、filter、OFMAP)を持つ、パラメータ化可能なオンチップメモリ階層とダブルバッファ付きメモリを実装する。
- ホストプロセッサへのスレーブインターフェースを介したシステム統合をモデル化し、SRAM/DRAM トラフィックを生成して DRAM 帯域幅を推定できるようにする。
- レイヤー単位のトポロジ CSV とアーキテクチャ設定から、サイクル正確なトラフィック追跡と要約指標を生成し、OS データフローの RTL と照合して検証する。
実験結果
リサーチクエスチョン
- RQ1データフローの選択(OS/WS/IS)が、サイストリックCNNアクセラレータの配列サイズとワークロードのハイパーパラメータとどのように相互作用して、パフォーマンスとエネルギーに影響するか。
- RQ2CNNワークロード全体で、スタールなしの動作と有利なエネルギ特性を達成するためのメモリ容量要件(スクラッチパッドの制限)。
- RQ3異なるデータフローの下で、配列の形状(アスペクト比)が一般的な DNN ワークロードの性能にどのように影響するか。
- RQ4固定された演算予算の下で、スケールアップ(より大きい配列)とスケールアウト(より多くの配列)の間のトレードオフは何か。
- RQ5単一のデータフローをさまざまなネットワークトポロジーで効果的に使用できるか、それとも効率のためにはデータフローのカスタマイズが不可欠か。
主な発見
- OS データフローは調査対象のワークロード全体でしばしば最高の性能を発揮するが、スタールーフの実装とハードウェアコストを考慮する必要がある。
- IS および WS は正方形アレイの場合、より少ない SRAM バンクを必要とする可能性があり、ワークロードと配列サイズに応じて性能が異なることを示す。小さなアレイは IS を好むことがある。
- オンチップのスクラッチパッドメモリを大きくすると、オフチップ帯域幅とエネルギーを削減できるが、ワークロード依存のニー点を超えると効果は頭打ちになる。
- 配列形状とデータフローは複雑に相互作用する。いくつかのネットワークでは、データフローを調整しないと縦長のアレイは性能が悪い一方、正方形アレイは全体的に良好に機能することが多い。
- スケールアップとスケールアウトは、ワークロードとデータフローに依存して異なる DRAM 帯域幅と性能の影響をもたらし、アクセラレータのスケーリングにおける非自明なトレードオフを強調する。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。