[論文レビュー] Integrating NVIDIA Deep Learning Accelerator (NVDLA) with RISC-V SoC on FireSim
本論文は、Amazon FPGAs 上の FireSim を用いて、RISC-V SoC に統合された NVDLA DNN アクcelerator のクラウドベースでサイクル正確なシミュレーションを提示している。これにより、費用対効果に優れた高精度な性能分析が可能となる。主な貢献は、YOLOv3 推論において NVDLA が 7.5 fps を達成することを示したこと、最後段階キャッシュの共有により最大 1.56x の高速化が達成されたこと、および CPU と NVDLA がメモリサブシステムを共有する場合、最大 2.5x の遅延増加(干渉)が生じることを明らかにしたことである。
NVDLA is an open-source deep neural network (DNN) accelerator which has received a lot of attention by the community since its introduction by Nvidia. It is a full-featured hardware IP and can serve as a good reference for conducting research and development of SoCs with integrated accelerators. However, an expensive FPGA board is required to do experiments with this IP in a real SoC. Moreover, since NVDLA is clocked at a lower frequency on an FPGA, it would be hard to do accurate performance analysis with such a setup. To overcome these limitations, we integrate NVDLA into a real RISC-V SoC on the Amazon cloud FPGA using FireSim, a cycle-exact FPGA-accelerated simulator. We then evaluate the performance of NVDLA by running YOLOv3 object-detection algorithm. Our results show that NVDLA can sustain 7.5 fps when running YOLOv3. We further analyze the performance by showing that sharing the last-level cache with NVDLA can result in up to 1.56x speedup. We then identify that sharing the memory system with the accelerator can result in unpredictable execution time for the real-time tasks running on this platform. We believe this is an important issue that must be addressed in order for on-chip DNN accelerators to be incorporated in real-time embedded systems.
研究の動機と目的
- 研究における物理的 FPGA ベースの NVDLA 結合の高コストと性能制限を克服すること。
- 実際の RISC-V SoC 環境における NVDLA の正確でサイクル正確な性能評価を可能にすること。
- マルチコアシステムにおける共有メモリおよびキャッシュリソースが NVDLA 性能に与える影響を調査すること。
- リアルタイム DNN 推論に影響を及ぼす埋め込みシステムにおける共有メモリシステムの深刻な干渉問題を同定すること。
- RISC-V 上での DNN アクセラレータ研究を支援する、公開可能でオープンソースのシミュレーションプラットフォームを提供すること。
提案手法
- Verilog と FireSim のハードウェア・ソフトウェア共同シミュレーションフレームワークを用いて、FireSim 最適化済みの RISC-V Rocket Chip SoC デザインに NVDLA を統合する。
- Amazon クラウド FPGAs 上で FireSim の FPGA アクセラレーションを活用したサイクル正確なシミュレーションを実行し、L2 キャッシュおよび DRAM を含む現実的なメモリサブシステムをモデル化する。
- ターゲット SoC をホスト FPGA の DRAM コントローラーから分離し、可変パラメータのメモリモデルに置き換えることで、正確な性能測定を可能にする。
- 共有された最後段階キャッシュ(LLC)を設定し、キャッシュ容量やブロックサイズなどのパラメータを変更することで、NVDLA 性能に与える影響を評価する。
- CPU コア上で合成されたメモリ集約的ワークロード(BwWrite)と NVDLA での YOLOv3 推論を同時にスケジューリングし、干渉効果を測定する。
- L1、LLC、DRAM のワーキングセットサイズ、およびコア数(1〜4)を変化させた状態での NVDLA 実行時間を測定・正規化する。
実験結果
リサーチクエスチョン
- RQ1実際の FPGA と比較して、サイクル正確なシミュレーション環境で実行される NVDLA の YOLOv3 推論性能はどのように異なるか?
- RQ2CPU と NVDLA が最後段階キャッシュ(LLC)を共有することによる DNN 推論スループットへの性能影響は何か?
- RQ3CPU ワークロードと NVDLA の間のメモリ競合が、リアルタイムシステムにおける DNN 推論の予測可能性および遅延に与える影響は何か?
- RQ4キャッシュブロックサイズが、空間局所性の活用を通じて NVDLA 性能を最適化する役割を果たすか?
- RQ5CPU とアクセラレータ間の共有メモリアクセスが、特に安全が求められる埋め込みアプリケーションにおいて、予測不能な実行時間を引き起こす程度はどの程度か?
主な発見
- FireSim でシミュレートされた RISC-V SoC 上で、NVDLA は YOLOv3 オブジェクト検出において 7.5 fps を達成しており、エッジアプリケーション向けに実用的な推論性能を示している。
- NVDLA と共有される最後段階キャッシュ(LLC)により、最大 1.56x の高速化が達成され、特に 128 バイトのキャッシュブロックサイズで空間局所性の捕捉が向上したことで最大の恩恵が得られた。
- LLC 共有による性能向上はブロックサイズに敏感であり、128 バイトブロックサイズおよび 4096 KiB キャッシュ容量の条件下で 1.51x の高速化が得られた。
- 共存する CPU ワークロードによるメモリ干渉により、CPU のワーキングセットが DRAM に収容され、4 つの BwWrite タスクが実行されている状態で、NVDLA 実行が最大 2.5x 遅延する場合があった。
- CPU ワークロードが L1 キャッシュ内に収まる場合は干渉が最小限に抑えられるが、LLC や DRAM を共有する場合に顕著に増加するため、リアルタイムシステムにおける深刻なボトルネックであることが示された。
- 結果から、特にリアルタイム埋め込みシステムでオンチップアクセラレータを使用する場合、性能の予測可能性を保証するための QoS メカニズム(メモリ帯域幅のパーティショニングや優先順位スケジューリングなど)の導入が強く求められることが示唆された。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。