[論文レビュー] Horizontally Fused Training Array: An Effective Hardware Utilization Squeezer for Training Novel Deep Learning Models
本稿では、繰り返し実行されるトレーニングジョブにおいて、同じまたは類似した深層学習モデルを、オペレータレベルで水平に統合することで、1つのアクセラレータ上で並列トレーニングを可能にするフレームワーク拡張である水平統合トレーニングアレイ(HFTA)を提案する。HFTAは、数学的に同等の統合オペレータを活用し、非効率な一般化されたGPU共有メカニズムを回避することで、GPUおよびTPU上で標準的な単一ジョブトレーニングと比較して最大15.1倍のトレーニングスルーレートを達成する。
Driven by the tremendous effort in researching novel deep learning (DL) algorithms, the training cost of developing new models increases staggeringly in recent years. We analyze GPU cluster usage statistics from a top research institute for more insights into the hardware efficiency achieved by typical DL training jobs. Our study reveals that single-accelerator training jobs can dominate the cluster-wide resource consumption when launched repetitively (e.g., for hyper-parameter tuning) while severely under-utilizing the hardware. Fortunately, we observe that such workloads have the following unique characteristics: (i) the models among jobs often have the same types of operators with the same shapes, and (ii) the inter-model horizontal fusion of such operators is mathematically equivalent to other already well-optimized operators. Thus, to help DL researchers and practitioners effectively improve the hardware utilization of their novel DL training workloads, we propose Horizontally Fused Training Array (HFTA). HFTA is a new DL framework extension library that horizontally fuses the models from different repetitive jobs deeply down to operators and then trains them simultaneously on a shared accelerator. To show the generality of our solution, we apply HFTA to six DL models training on state-of-the-art accelerators (GPUs and TPUs). Our results indicate that HFTA is highly effective in improving hardware utilization and achieves up to $15.1 \ imes$ higher training throughput vs. the standard practice of running each job on a separate accelerator.
研究の動機と目的
- 繰り返し実行される単一アクセラレータの深層学習トレーニングジョブにおいて顕著なハードウェア未利用が生じる問題に対処すること。この問題は、クラスタリソースの大部分を占めながらも、低利用率である。
- 同じまたは類似したモデル間で、同一のオペレータタイプと形状を持つという独自のワークロード特性を同定し、効果的なモデル間水平統合を可能にする。
- 一般化されたGPU共有プリミティブに依存せずに、オペレータレベルでの統合によりハードウェア利用効率を向上させるHFTAというフレームワーク拡張を設計・実装すること。
- 多様なモデル(ResNet-18、MobileNet、BERTなど)とアクセラレータ(V100 GPU、TPU v3)を対象に、HFTAの有効性を評価し、スケーラビリティと性能向上を実証すること。
提案手法
- HFTAは、同じまたは類似したモデルアーキテクチャを持つ複数のトレーニングジョブのオペレータを、深く水平に統合し、共有アクセラレータ上に1つの計算グラフに統合する。
- 統合されたオペレータは、最適化済みのプリミティブ(例:グループ化畳み込み)と数学的に同等であるため、既存のハードウェアおよびコンパイラー(例:XLA、cuDNN)で効率的に実行可能である。
- 完全統合と部分統合の両方をサポートしており、モデルアーキテクチャにわずかな違いがある場合でも柔軟に適応可能である。
- ライブラリ拡張を通じて既存のディープラーニングフレームワークに統合され、モデルコードやトレーニングパイプラインの変更なしにシームレスにデプロイ可能である。
- 混合精度トレーニング(FP32およびAMP)をサポートし、統合中にメモリオーバーフローを回避するための動的メモリ管理を実施する。
- ハードウェア利用効率を監視し、スルーレートを最大化しながら安定性を維持するため、デバイスごとの統合モデル数を自動で調整する。
実験結果
リサーチクエスチョン
- RQ1同じまたは類似した深層学習モデルの間で、モデル間の水平統合を実施することで、繰り返し実行される単一アクセラレータトレーニングワークロードにおけるハードウェア利用効率を顕著に向上させることができるか?
- RQ2GPUおよびTPU上で、統合モデル数の増加に伴いHFTAの性能はどのようにスケーリングするか?
- RQ3完全なモデル統合が不可能な場合でも、特定のレイヤーやオペレータのみを統合する部分統合は、トレーニングスルーレートの向上にどの程度寄与するか?
- RQ4多様なモデルとアクセラレータを対象に、HFTAは標準的な手法(シリアル、コンカレント、MPS)と比較して、スルーレートおよびハードウェア利用効率においてどの程度優れているか?
主な発見
- HFTAは、単一のV100 GPU上で標準的なシリアルトレーニングと比較して最大15.1倍のトレーニングスルーレートを達成し、顕著な効率向上を示した。
- V100 GPU上では、HFTAはシリアルトレーニングの2.42倍から3.94倍、コンカレントトレーニングの1.67倍から3.02倍、MPSベース共有の1.25倍から2.24倍のスルーレートを達成した。
- TPU v3上では、HFTAはシリアルトレーニングの2.98倍から6.43倍のピークスルーレートを達成し、TPU上でも強力なスケーラビリティを示した。
- 部分統合でも測定可能な性能向上が得られ、レイヤーごとに統合を段階的に無効化してもスルーレートは徐々に低下する傾向にあり、部分統合でも効果があることが示された。
- TPU上での高水準の統合で観察された性能劣化は、おそらくTPUのメモリ管理システムにおけるメモリ圧力やリマテリアライゼーション、スワップ最適化に起因していると考えられる。
- ResNet-18、MobileNet-V3Large、BERT-Medium、Transformersなど多様なモデルにおいて、HFTAの有効性は一貫しており、汎用性と広範な適用可能性を確認した。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。