Skip to main content
QUICK REVIEW

[論文レビュー] ShortcutFusion: From Tensorflow to FPGA-based accelerator with reuse-aware memory allocation for shortcut data

Duy Thanh Nguyen, Hyeonseung Je|arXiv (Cornell University)|Jun 15, 2021
Advanced Neural Network Applications参考文献 55被引用数 40
ひとこと要約

ShortcutFusion は、残差ネットワーク内のショートカット接続における再利用に配慮した静的メモリ割り当てを可能にするエンドツーエンドのFPGAコンパイラおよびアクセラレータであり、オフチップDRAMアクセスを顕著に削減する。EfficientNet-B1 において 256×256 入力で、ハードウェアに配慮したデータ再利用と共有MACアレイを活用することで、特徴マップのメモリトラフィックを最小限に抑え、NVIDIA RTX 2080 Ti より 2.8倍の高速化と 9.9倍の高いエネルギー効率を達成する。

ABSTRACT

Residual block is a very common component in recent state-of-the art CNNs such as EfficientNet or EfficientDet. Shortcut data accounts for nearly 40% of feature-maps access in ResNet152 [8]. Most of the previous DNN compilers, accelerators ignore the shortcut data optimization. This paper presents ShortcutFusion, an optimization tool for FPGA-based accelerator with a reuse-aware static memory allocation for shortcut data, to maximize on-chip data reuse given resource constraints. From TensorFlow DNN models, the proposed design generates instruction sets for a group of nodes which uses an optimized data reuse for each residual block. The accelerator design implemented on the Xilinx KCU1500 FPGA card 2.8x faster and 9.9x more power efficient than NVIDIA RTX 2080 Ti for 256x256 input size. . Compared to the result from baseline, in which the weights, inputs, and outputs are accessed from the off-chip memory exactly once per each layer, ShortcutFusion reduces the DRAM access by 47.8-84.8% for RetinaNet, Yolov3, ResNet152, and EfficientNet. Given a similar buffer size to ShortcutMining [8], which also mine the shortcut data in hardware, the proposed work reduces off-chip access for feature-maps 5.27x while accessing weight from off-chip memory exactly once.

研究の動機と目的

  • 現代のCNN、特に EfficientNet や ResNet152 におけるショートカット接続が引き起こす高いオフチップメモリアクセス(特徴マップトラフィックの最大40%を占める)を解消すること。
  • 既存のDNNコンパイラおよびアクセラレータが、レイヤー間をまたがるショートカットデータの再利用を無視し、メモリ割り当てが最適でないという制限を克服すること。
  • オンチップバッファ制約のもとで、オフチップメモリアクセスを最小限に抑える、TensorFlowのフロzenモデルからFPGAアクセラレーテッド推論へに至るエンドツーエンドのフローを設計すること。
  • 共有MACアレイアーキテクチャと知的なデータ再利用スケジューリングにより、高いMAC効率と低遅延を達成すること。

提案手法

  • コンパイラは、残差ブロックを分析し、レイヤー間で最適な再利用パターンを同定することで、再利用に配慮した静的メモリ割り当てを実行する。
  • 複数のノードを最適化されたデータ再利用を伴う1つのカーネルに統合し、オフチップDRAMへの冗長なアクセスを最小限に抑える。
  • ハードウェアアクセラレータは、利用率を最大化し、面積オーバーヘッドを低減するため、共有MACアレイアーキテクチャを採用する。
  • オンチップバッファが限られている状況でも、重みと特徴マップが各レイヤーでオフチップメモリから正確に1回ずつアクセスされるように設計されている。
  • カスタムデータフローシケジューラにより、各レイヤーの特性に合わせて、入力・出力・重み再利用の柔軟な再利用スキームを実現する。
  • TensorFlowのフロゼンモデルからXilinx KCU1500 FPGAまでエンドツーエンドにコンパイル可能であり、8ビット推論をサポートする。

実験結果

リサーチクエスチョン

  • RQ1ハードウェア複雑度を増加させることなく、コンパイラベースの手法が残差ネットワークにおけるショートカットデータのオフチップメモリアクセスを顕著に削減できるか?
  • RQ2再利用に配慮した静的メモリ割り当ては、FPGA上で高いMAC効率を維持しつつ、DRAMトラフィックを最小限に抑えるのにどの程度効果的か?
  • RQ3Squeeze-and-Excitationベースの最新CNN、特に EfficientNet-B1 に対して、FPGAベースのアクセラレータはGPUをどの程度上回るか、遅延およびエネルギー効率の面で?
  • RQ4提案された共有MACアーキテクチャは、従来の設計と比較してリソース利用効率とスループットの面でどの程度優れているか?

主な発見

  • ShortcutFusion は、RetinaNet、YOLOv3、ResNet152、EfficientNet モデルにおいて、ベースライン比でDRAMアクセスを 47.8% ~ 84.8% 削減した。
  • 256×256 入力の EfficientNet-B1 において、FPGAアクセラレータは NVIDIA RTX 2080 Ti より 2.8倍の高速化と 9.9倍の高いエネルギー効率を達成した。
  • ShortcutMining と同等のバッファサイズでも、オフチップ特徴マップアクセスを 5.27倍削減し、重みへのアクセスは1回のみである。
  • KCU1500 で 200 MHz で 317.1 GOPS を達成し、DSPが 2176 個使用されたが、深さ方向畳み込みパターンのため、DSP利用率は低く(19.37%)も高い効率を示した。
  • 重みの再利用率は 100% を維持し、中間データ移動を最小限に抑え、256×256 入力で合計のオフチップメモリアクセスを 60.7 MB にまで削減した。
  • この手法はASIC設計にも適用可能であり、オンチップバッファとオフチップメモリのトレードオフを統一的に最適化する戦略を提供する。

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

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

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

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