[論文レビュー] fpgaConvNet: A Toolflow for Mapping Diverse Convolutional Neural Networks on Embedded FPGAs
fpgaConvNet は、多様な畳み込みニューラルネットワーク(ConvNets)— とりわけ不規則な接続を持つものでさえも — を組み込み型FPGAにマップする自動化されたSDFベースのツールフローである。設計空間探索を多目的最適化問題として定式化することで、5Wの同じ電力制約下で、高度に最適化された組み込みGPU設計よりも最大6.65倍の高いスループットを達成する。
In recent years, Convolutional Neural Networks (ConvNets) have become an enabling technology for a wide range of novel embedded Artificial Intelligence systems. Across the range of applications, the performance needs vary significantly, from high-throughput video surveillance to the very low-latency requirements of autonomous cars. In this context, FPGAs can provide a potential platform that can be optimally configured based on the different performance needs. However, the complexity of ConvNet models keeps increasing making their mapping to an FPGA device a challenging task. This work presents fpgaConvNet, an end-to-end framework for mapping ConvNets on FPGAs. The proposed framework employs an automated design methodology based on the Synchronous Dataflow (SDF) paradigm and defines a set of SDF transformations in order to efficiently explore the architectural design space. By selectively optimising for throughput, latency or multiobjective criteria, the presented tool is able to efficiently explore the design space and generate hardware designs from high-level ConvNet specifications, explicitly optimised for the performance metric of interest. Overall, our framework yields designs that improve the performance by up to 6.65x over highly optimised embedded GPU designs for the same power constraints in embedded environments.
研究の動機と目的
- 厳しい電力、スループット、レイテンシ制約の下で、複雑で多様な ConvNets を組み込み型FPGAにマッピングするという増大する課題に対処すること。
- 手作業による作業を削減し、効率を向上させるために、大規模で多次元的なFPGA設計空間の自動探索を実現すること。
- 従来のモデル(例:AlexNet や VGG16)にとどまらず、ResNet や DenseNet、Inception などの規則的・不規則的両方の ConvNet アーキテクチャをサポートすること。
- アプリケーション固有のパフォーマンス要件に基づいて、スループット、レイテンシ、またはマルチ目的基準を最適化したハードウェアアクセラレータを生成すること。
- モバイルおよび組み込みシステムで低消費電力のままに保ちつつ、高度に最適化された組み込みGPUソリューションを上回るパフォーマンス・パーウォットを達成すること。
提案手法
- フレームワークは、畳み込みニューラルネットワークワークロードとFPGAハードウェアマッピングを、データフローアークと計算ノードを持つ有向グラフとして表現するため、同期データフロー(Synchronous Dataflow; SDF)モデルを用いる。
- 設計空間探索を数学的最適化問題として定式化し、コンパイル時設定可能なビルドブロックとそのリソース・パフォーマンスのトレードオフをパrameter化する。
- グラフ分割(再構成を伴う)、粗粒度および細粒度の折りたたみ、重みの再ロードといった一連のSDF変換を代数的に適用し、パフォーマンスとリソースのトレードオフを探索する。
- フレームワークはCaffeをフロントエンドとしてサポートし、Xilinx Zynq 7045 FPGA上で16ビット固定小数点演算(FXP16)を用いてモデルをマップする。
- 効率的で自動化された設計空間探索を可能にするために、スループット、レイテンシ、リソース消費量の解析的モデルを統合する。
- このアプローチにより、高レベルのConvNet仕様からストリーミングアクセラレータをエンド・ツー・エンドに生成可能となり、DenseNet や ResNet のような不規則なデータフローも対応可能となる。
実験結果
リサーチクエスチョン
- RQ1自動化されたツールフローは、電力、スループット、レイテンシ制約を満たしつつ、膨大なFPGA設計空間を効率的に探索できるか?
- RQ2同じ電力予算下で、FPGAベースのConvNetアクセラレータのパフォーマンスは、高度に最適化された組み込みGPU実装と比べてどの程度か?
- RQ3提案されたSDFベースの手法は、DenseNet-161 などの現代的なモデルも含め、規則的・不規則的両方のConvNetアーキテクチャを効果的に処理できるか?
- RQ4組み込み型FPGAデプロイメントにおいて、スループットとレイテンシを同時に最適化できる程度はどの程度か?
- RQ5FPGA最適化済みConvNetアクセラレータは、最先端の組み込みGPUと比べて、どの程度のパフォーマンス・パーウォットの向上を達成できるか?
主な発見
- fpgaConvNet は、5Wの電力制約下でレイテンシに敏感なアプリケーションにおいて、NVIDIA Tegra X1 GPU より最大6.65倍の高いスループットを達成する。
- スループット指向のワークロードでは、fpgaConvNet が Tegra X1 より平均3.32倍のスループット向上を達成し、幾何平均で3.07倍の向上を示す。
- レイテンシに敏感なシナリオでは、fpgaConvNet が Tegra X1 より平均3.95倍のスループット向上を達成し、幾何平均で3.43倍の向上を示す。
- ピークGPU周波数(998 MHz)で評価した場合、fpgaConvNet はレイテンシ指向のアプリケーションでTegra X1に比べて1.70倍のパフォーマンス・パーウォットの向上を達成する。
- このフレームワークにより、DenseNet-161 に対するFPGAマッピングが初めて実現され、複雑で不規則なConvNetアーキテクチャの処理能力を実証した。
- fpgaConvNet は、ピークGPU性能状態でも、高度に最適化された組み込みGPU設計よりも最大1.70倍のパフォーマンス・パーウォットの向上を達成する。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。