Skip to main content
QUICK REVIEW

[論文レビュー] Serving Recurrent Neural Networks Efficiently with a Spatial Accelerator

Tian Zhao, Yaqi Zhang|arXiv (Cornell University)|Sep 26, 2019
Advanced Neural Network Applications参考文献 20被引用数 10
ひとこと要約

この論文は、反復型ニューラルネットワーク(RNN)推論を最適化する空間的アクセラレータ設計を提案している。BLASベースのカーネルに代わり、細粒度のループレベル抽象化を採用することで、カーネル間最適化、空間的並列処理、パイipelニングを可能にした。Tesla V100 GPUに対して30倍の幾何平均の高速化、1.6倍の面積効率、2倍の消費電力効率を達成した。FPGA上でMicrosoft Brainwaveと比較しても2倍の高速化を達成した。

ABSTRACT

Recurrent Neural Network (RNN) applications form a major class of AI-powered, low-latency data center workloads. Most execution models for RNN acceleration break computation graphs into BLAS kernels, which lead to significant inter-kernel data movement and resource underutilization. We show that by supporting more general loop constructs that capture design parameters in accelerators, it is possible to improve resource utilization using cross-kernel optimization without sacrificing programmability. Such abstraction level enables a design space search that can lead to efficient usage of on-chip resources on a spatial architecture across a range of problem sizes. We evaluate our optimization strategy on such abstraction with DeepBench using a configurable spatial accelerator. We demonstrate that this implementation provides a geometric speedup of 30x in performance, 1.6x in area, and 2x in power efficiency compared to a Tesla V100 GPU, and a geometric speedup of 2x compared to Microsoft Brainwave implementation on a Stratix 10 FPGA.

研究の動機と目的

  • BLASベースのRNNアクセラレーションに起因する高コストのカーネル間データ移動とリソース未利用の非効率を是正すること。
  • 一般化されたループ構造を用いることで、カーネル間最適化を可能にし、RNN推論の性能とエネルギー効率を向上させること。
  • 細粒度のパイプライン処理とベクトル化を備えた空間アーキテクチャにより、さまざまなRNN問題サイズにおいて一貫したハードウェア利用率を実現すること。
  • 低遅延RNNサービングを支援する混合精度演算をサポートするマイクロアーキテクチャを共同設計すること。

提案手法

  • 各RNNタイムステップ内でゲート関数と非線形活性化関数を統合し、中間データ移動を低減し、結果をレジスタに保持する。
  • SIMD並列処理のための内側ループのベクトル化と、粗粒度パイプライン処理のための外側ループのアンローリングにより、空間的並列処理とパイプライン処理を実装する。
  • メモリ階層とループネスティングを明示的に表現できるドメイン特化言語(DSL)であるSpatialを用いてRNN計算を記述する。
  • RNN推論に不可欠な混合精度演算をサポートするように、Plasticine CGRAにマイクロアーキテクチャ拡張を設計する。
  • 動的スケジューリングのオーバーヘッドなしにデータフロー駆動実行を採用し、遅延を低減する。
  • 28nmプロセスで構成可能な空間的アクセラレータ上で、DeepBenchベンチマークを用いて設計を評価する。

実験結果

リサーチクエスチョン

  • RQ1BLAS抽象化を一般化されたループ構造に置き換えることで、空間的アクセラレータ上でのRNN推論性能がどの程度向上するか?
  • RQ2カーネル間最適化とパイプライン処理は、RNNワークロードにおけるデータ移動とリソース利用率の向上にどの程度寄与するか?
  • RQ3細粒度並列処理と混合精度サポートを備えた空間アーキテクチャは、GPUおよびFPGAプラットフォームと比較して、RNN推論においてより優れた性能とエネルギー効率を達成できるか?
  • RQ4提案手法は、さまざまなRNN問題サイズと隠れユニット次元数に対してどのようにスケーリングするか?
  • RQ5特にレジスタとスクラッチパッドの使用に関するメモリ階層管理の影響は、RNN推論におけるエネルギー効率にどの程度及ぼすか?

主な発見

  • 提案された設計は、Tesla V100 GPUに対して、性能で30倍の幾何平均の高速化、面積効率で1.6倍、消費電力効率で2倍の向上を達成した。
  • Stratix 10 FPGA上で動作するMicrosoft Brainwaveと比較して、実装は2倍の幾何平均の高速化を達成した。
  • 効果的なカーネル間最適化とリソースバランスにより、さまざまなサイズのRNNタスクにおいても高いFLOPS利用率を維持した。
  • スクラッチパッドではなくレジスタに中間結果を格納することで、エネルギー消費を低減し、メモリアクセス効率を向上させた。
  • 細粒度パイプライン処理とベクトル化を備えた空間アーキテクチャは、小規模および大規模なRNNワークロードにおいて一貫した性能を発揮した。
  • 14nmプロセスでは、PlasticineがStratix 10の性能に並ぶと予想され、かつ2倍以上も小型化されるため、性能/面積比で2倍から60倍の向上が見込まれる。

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

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

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

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