Skip to main content
QUICK REVIEW

[論文レビュー] A Runtime-Based Computational Performance Predictor for Deep Neural Network Training

Geoffrey X. Yu, Yubo Gao|arXiv (Cornell University)|Jan 31, 2021
Advanced Neural Network Applications参考文献 48被引用数 4
ひとこと要約

本稿では、1つの参照GPUでの測定結果のみを用いて、DNN学習反復時間の高精度なクロスGPU予測を可能にするランタイムベースのパフォーマンス予測器Habitatを提示する。波動スケーリングと事前学習済みの多層パーセプトロンを適用することで、多様なモデルとGPUアーキテクチャにおいて平均11.8%の予測誤差を達成し、ユーザーがターゲットハードウェアに事前にアクセスできない状況下でも、コスト効率の良いGPU選定を可能にする。

ABSTRACT

Deep learning researchers and practitioners usually leverage GPUs to help train their deep neural networks (DNNs) faster. However, choosing which GPU to use is challenging both because (i) there are many options, and (ii) users grapple with competing concerns: maximizing compute performance while minimizing costs. In this work, we present a new practical technique to help users make informed and cost-efficient GPU selections: make performance predictions with the help of a GPU that the user already has. Our technique exploits the observation that, because DNN training consists of repetitive compute steps, predicting the execution time of a single iteration is usually enough to characterize the performance of an entire training process. We make predictions by scaling the execution time of each operation in a training iteration from one GPU to another using either (i) wave scaling, a technique based on a GPU's execution model, or (ii) pre-trained multilayer perceptrons. We implement our technique into a Python library called Habitat and find that it makes accurate iteration execution time predictions (with an average error of 11.8%) on ResNet-50, Inception v3, the Transformer, GNMT, and DCGAN across six different GPU architectures. Habitat supports PyTorch, is easy to use, and is open source.

研究の動機と目的

  • ユーザーがターゲットハードウェアにアクセスできない状況下で、DNN学習に適したコスト効率の良いGPUを選定する課題に対処すること。
  • モデルやGPUのセットに限定された不完全または古くなったベンチマークに依存することを減らすこと。
  • 新しいまたは入手不可能なGPUアーキテクチャにおいて、カスタムDNNのパフォーマンスを正確に予測できること。
  • クラウドGPU調達、オンプレミスクラスタスケジューリング、ハードウェア調達などの実用的状況での意思決定を支援すること。

提案手法

  • DNN学習の繰り返しの性質を活用し、1つの参照GPUでの測定結果に基づいて、全学習反復時間の予測を行う。
  • GPU実行モデルに由来する波動スケーリングという手法を用い、ソースGPUからターゲットGPUへの演算レベル実行時間の外挿を実現する。
  • 異なるGPUアーキテクチャ間での実行時間スケーリングをモデル化・予測するために、事前学習済みの多層パーセプトロン(MLP)を採用する。
  • PyTorchと統合され、軽量なPythonライブラリとして動作するため、DNN学習ワークフローへの組み込みが容易である。
  • 1つの参照GPU上で1回の学習反復における個々の演算の実行時間を測定し、これらの時間をスケーリングすることで、他のGPUでのパフォーマンスを推定する。
  • 解析的スケーリング(波動スケーリング)とデータ駆動型モデリング(MLP)を組み合わせることで、多様なDNNとハードウェアにおいて予測精度を向上させる。

実験結果

リサーチクエスチョン

  • RQ11つのGPUでの1回のランタイム測定で、異なるGPUにおけるDNN学習反復の実行時間を正確に予測できるか?
  • RQ2波動スケーリングは、DNN学習のクロスGPUパフォーマンス予測において、データ駆動型モデル(例:MLP)と比べてどのように差をつけるか?
  • RQ3このアプローチによって、GPU選定ワークフローにおけるターゲットハードウェアへの直接ベンチマーク実行の必要性はどの程度低減できるか?
  • RQ4ResNet-50、Inception v3、Transformer、GNMT、DCGANといった多様なDNNアーキテクチャに、この手法は一般化可能か?
  • RQ5この予測器は、クラウド調達やクラスタースケジューリングといった実世界のシナリオで、コスト効率の良いGPU選定を支援できるか?

主な発見

  • Habitatは、6つの異なるGPUアーキテクチャ上で、5つの多様なDNNモデル(ResNet-50、Inception v3、Transformer、GNMT、DCGAN)に対して平均11.8%の予測誤差を達成した。
  • 本手法は、GNMTの最適化においてコスト効率を考慮した場合に異なるGPUが選ばれることを正しく予測しており、ハードウェア選定における実用的価値を示している。
  • DCGAN学習において、HabitatはV100が2080Ti(エントリーモデル)に対して顕著なパフォーマンス優位性を持たないことを正しく予測しており、ハイエンドGPUの必要性に関する仮定に疑問を呈している。
  • 波動スケーリングとMLPベースの予測の両方が、全体の精度向上に寄与しており、ハイブリッドアプローチは単独で使用した場合を上回る性能を示した。
  • 本手法は、ターゲットGPUへの直接アクセスを必要とせず、正確なパフォーマンス推定を可能にし、意思決定のためのハードウェア調達やスケジューリングの障壁を低減した。
  • Habitatはオープンソースとして公開されており、PyTorchと統合されているため、研究者や実務家が実世界のディープラーニングワークフローで容易に利用可能である。

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

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

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

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