Skip to main content
QUICK REVIEW

[論文レビュー] Towards Latency-aware DNN Optimization with GPU Runtime Analysis and Tail Effect Elimination

Fuxun Yu, Zirui Xu|arXiv (Cornell University)|Nov 8, 2020
Advanced Neural Network Applications参考文献 19被引用数 4
ひとこと要約

本稿では、GPU実行パターンのフルスタック解析を通じて、非効率なスレッドブロックスケジューリングとリソース未利用に起因するGPUテール効果を同定・低減する、GPUランタイムに配慮したDNN最適化手法を提案する。GPU波レベル実行特性に適合したDNNモデル構成の適応により、ハイエンドおよび組み込みGPUの両方で、最先端のpruningおよびNAS手法を上回る11%〜27%のレイテンシ低減と2.5%〜4.0%の精度向上を達成する。

ABSTRACT

Despite the superb performance of State-Of-The-Art (SOTA) DNNs, the increasing computational cost makes them very challenging to meet real-time latency and accuracy requirements. Although DNN runtime latency is dictated by model property (e.g., architecture, operations), hardware property (e.g., utilization, throughput), and more importantly, the effective mapping between these two, many existing approaches focus only on optimizing model property such as FLOPS reduction and overlook the mismatch between DNN model and hardware properties. In this work, we show that the mismatch between the varied DNN computation workloads and GPU capacity can cause the idle GPU tail effect, leading to GPU under-utilization and low throughput. As a result, the FLOPs reduction cannot bring effective latency reduction, which causes sub-optimal accuracy versus latency trade-offs. Motivated by this, we propose a GPU runtime-aware DNN optimization methodology to eliminate such GPU tail effect adaptively on GPU platforms. Our methodology can be applied on top of existing SOTA DNN optimization approaches to achieve better latency and accuracy trade-offs. Experiments show 11%-27% latency reduction and 2.5%-4.0% accuracy improvement over several SOTA DNN pruning and NAS methods, respectively

研究の動機と目的

  • ハードウェア・ソフトウェアの不整合に起因する、理論的FLOPs削減と実際の実行時間レイテンシ向上の間のギャップを解消すること。
  • FLOPs削減にもかかわらずレイテンシ低減が一貫しない原因を特定すること、特に非最適なスレッドスケジューリングに起因するGPUテール効果を特定すること。
  • GPUランタイム特性に適合したDNNモデル構造の適応による、レイテンシと精度のトレードオフの改善を図ること。
  • ハイエンドおよび組み込みシステムを含む多様なGPUプラットフォームに一般化可能なアプローチの構築

提案手法

  • 個々のGPUコアとスレッドを分析することで、レイテンシの階段状パターン(staircasing)の根本的要因を解明する、フルスタックGPUランタイム解析を実施する。
  • 「GPUテール効果」を、スレッドブロックサイズとカーネル起動パターンの不一致に起因する波レベルGPU実行の非効率性として再定義する。
  • モデル構造(例:フィルタ数、バッチサイズ、フィルタ形状)を再構成することで、GPU波境界に適合させ、リソース利用率を向上させる、スレッド適応型DNNデプロイメントを提案する。
  • DNNレイヤー構成を最適なGPU実行サイクルにマッピングするGPU効率ガイドラインを導入し、アイドルサイクルとスループットの変動を最小限に抑える。
  • GPU固有のコード変更なしに、既存の最先端DNN最適化手法(例:pruning、NAS)の上に本手法を適用する。
  • VGG16、ResNet56などの複数のDNNと、P6000、Jetson NanoなどのGPUプラットフォームで検証し、一般化可能性を示す。

実験結果

リサーチクエスチョン

  • RQ1なぜDNN推論におけるGPU上でのFLOPs削減が、一貫してレイテンシ削減に繋がらないのか?
  • RQ2DNNモデルのpruningや再構成中に観察される非線形的「レイテンシの階段状パターン」の原因は何か?
  • RQ3DNN推論中にGPUハードウェアの利用率とスループットはどのように変動し、それがパフォーマンス劣化にどのように寄与しているのか?
  • RQ4モデルレベルの構成調整によって、GPUテール効果を体系的に同定・低減できるか?
  • RQ5提案手法の最適化アプローチは、異なるGPUプラットフォームやDNNアーキテクチャにどの程度一般化可能か?

主な発見

  • レイテンシの階段状パターン—FLOPs削減にもかかわらずレイテンシ低減が一貫しない状態—は、バッチサイズ、入力解像度、フィルタ形状、フィルタ数の変更に関わらず継続的に観察される。
  • GPUテール効果は、非効率なスレッドブロックスケジューリングと波レベルGPU実行に起因し、FLOPsが削減されてもアイドルサイクルやリソース未利用が生じる。
  • P6000 GPUでは、VGG16で27.2%のレイテンシ低減、ResNet56で9.0%のレイテンシ低減を達成し、精度は維持またはわずかに向上した。
  • Jetson Nano組み込みGPUでは、VGG16で20.5%のレイテンシ低減、ResNet56で13.3%〜17.1%のレイテンシ低減を達成し、強力なクロスプラットフォーム一般化性を示した。
  • 後処理最適化レイヤーとして適用しても、最先端のpruningおよびNAS手法を上回る2.5%〜4.0%の精度-レイテンシトレードオフの改善が達成された。
  • レイテンシの階段状パターンは、フィルタ数が多く、バッチサイズが大きな密結合畳み込み層で顕著に現れるが、軽量なディープワイド畳み込み層では緩和される。

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

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

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

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