[論文レビュー] Daydream: Accurately Estimating the Efficacy of Optimizations for {DNN} Training
Daydreamは、低レベルのCUPTIトレースから得られる細分化された依存関係グラフを用いて実行をモデル化することで、DNN最適化のパフォーマンスへの影響を予測するプロファイリングツールである。ドメイン特化されたグラフ変換を用いてさまざまな最適化をシミュレートし、多様なハードウェアおよびソフトウェア構成において正確なパフォーマンス向上予測を実現する。
Modern deep neural network (DNN) training jobs use complex and heterogeneous software/hardware stacks. The efficacy of software-level optimizations can vary significantly when used in different deployment configurations. It is onerous and error-prone for ML practitioners and system developers to implement each optimization separately, and determine which ones will improve performance in their own configurations. Unfortunately, existing profiling tools do not aim to answer predictive questions such as How will optimization X affect the performance of my model?. We address this critical limitation, and proposes a new profiling tool, Daydream, to help programmers efficiently explore the efficacy of DNN optimizations. Daydream models DNN execution with a fine-grained dependency graph based on low-level traces collected by CUPTI, and predicts runtime by simulating execution based on the dependency graph. Daydream maps the low-level traces using DNN domain-specific knowledge, and introduces a set of graph-transformation primitives that can easily model a wide variety of optimizations. We show that Daydream is able to model most mainstream DNN optimization techniques, and accurately predict the efficacy of optimizations that will result in significant performance improvements.
研究の動機と目的
- DNNトレーニングにおいて「最適化Xは私のモデルのパフォーマンスにどのように影響するか?」という質問に答えられる予測プロファイリングツールの不足に対処すること。
- 異なるデプロイ構成において各最適化を個別にテストする際の手作業の負担と誤りのリスクを低減すること。
- すべてのバリエーションをデプロイしなくても、システム開発者やML実務家が最適化の有効性を効率的に探索できるようにすること。
- 実際のデプロイの前段階で、パフォーマンス向上の正確な予測的インサイトを提供すること。
提案手法
- CUPTIを介して収集された低レベルのハードウェアパフォーマンストレースから、細分化された依存関係グラフを構築する。
- ドメイン特化された知識を用いて低レベルのCUPTIトレースをDNN固有の演算にマッピングすることで、意味的モデリングを可能にする。
- カーネル統合やメモリレイアウト変更などの多様な最適化技術をモデル化するためのグラフ変換プリミティブのセットを導入する。
- 変換された依存関係グラフ上でDNN実行をシミュレートし、実行時間とパフォーマンス向上を予測する。
- 依存関係グラフを活用してパフォーマンス変更を計算グラフ全体に伝搬させ、最適化の影響を正確に予測可能にする。
- ハードウェアおよびソフトウェアスタックの特性をシミュレーションモデルに統合することで、クロス構成予測を可能にする。
実験結果
リサーチクエスチョン
- RQ1実際にターゲット構成にデプロイする必要がない状態で、プロファイリングツールがDNN最適化のパフォーマンスへの影響を予測できるか?
- RQ2低レベルのトレースと依存関係グラフを用いたシミュレーションベースのアプローチは、実世界のパフォーマンス向上をどれほど正確に予測できるか?
- RQ3統一されたグラフ変換フレームワークは、多様なDNN最適化技術をどれだけ広くモデル化できるか?
- RQ4Daydreamの予測精度は、多様なハードウェアおよびソフトウェア構成においてどのように比較されるか?
主な発見
- Daydreamは、多様なDNNモデルおよびハードウェア構成において、最適化によるパフォーマンス向上を正確に予測する。
- このツールは、CUPTIトレースから得られる細分化された依存関係グラフを用いてDNN実行をモデル化することで、高い予測精度を達成している。
- グラフ変換プリミティブにより、カーネル統合やメモリアクセス最適化を含む、大多数の主流のDNN最適化技術をモデル化可能である。
- 実際の実行の前段階で信頼性の高い予測的インサイトを提供するため、最適化の試行錯誤的デプロイの必要性が大幅に削減される。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。