Skip to main content
QUICK REVIEW

[論文レビュー] On Scale-out Deep Learning Training for Cloud and HPC

Srinivas Sridharan, Karthikeyan Vaidyanathan|arXiv (Cornell University)|Jan 24, 2018
Stochastic Gradient Optimization Techniques参考文献 12被引用数 19
ひとこと要約

本論文では、クラウドおよびHPCシステムにおけるスケールアウト型ディープラーニング学習向けに最適化された高パフォーマンス通信ライブラリであるIntel® Machine Learning Scaling Library(MLSL)を提示する。非同期通信進捗、メッセージ優先順位付け、低精度の集約処理を可能にすることで、ResNet-50に対して256ノードで90%のスケーリング効率を達成し、標準のMPIと比較して最初のレイヤーの通信遅延を1.8倍~2.2倍まで短縮した。

ABSTRACT

The exponential growth in use of large deep neural networks has accelerated the need for training these deep neural networks in hours or even minutes. This can only be achieved through scalable and efficient distributed training, since a single node/card cannot satisfy the compute, memory, and I/O requirements of today's state-of-the-art deep neural networks. However, scaling synchronous Stochastic Gradient Descent (SGD) is still a challenging problem and requires continued research/development. This entails innovations spanning algorithms, frameworks, communication libraries, and system design. In this paper, we describe the philosophy, design, and implementation of Intel Machine Learning Scalability Library (MLSL) and present proof-points demonstrating scaling DL training on 100s to 1000s of nodes across Cloud and HPC systems.

研究の動機と目的

  • クラウドおよびHPC環境における数百~数千ノードにわたるディープラーニング学習のスケーリング課題に対処すること。
  • MPIのような既存の通信ライブラリに見られる、遅延優先順位付けや計算・通信の重ね合わせといったディープラーニングワークロードに特化した最適化が欠如している点を克服すること。
  • 知的なワークロード分割とシステムレベルの最適化により、計算対通信比を最大化することで、効率的な大バッチ学習を可能にすること。
  • ディープラーニングフレームワーク間で統一されたソフトウェアインターフェースを提供し、スケーラブルな学習ソリューションの標準化と導入加速を実現すること。

提案手法

  • 層の特性に基づいた柔軟なワークロード分割を可能にするために、ノードをグループ化することで、データ並列とモデル並列を組み合わせたハイブリッド並列処理を導入する。
  • ミニバッチサイズの最適化と、特にデータ並列において計算・通信の重ね合わせを活用することで、計算対通信比を最大化する。
  • 最初のレイヤーの勾配など遅延に敏感な通信を、後続の大きなレイヤー処理よりも優先して処理するため、MLSLにメッセージ優先順位付けを実装する。
  • 専用コアを用いて通信処理の非同期進捗を実現し、トレーニングパイプラインにおける計算と通信の重ね合わせを向上させる。
  • 通信量を削減しスケーリング効率を向上させるために、集約処理における低精度データ型(例:bfloat16)をサポートする。
  • Caffe、TensorFlow、nGraphなどの主要なDLフレームワークと、統一APIを介して統合し、下位の並列化戦略を抽象化することで、スタック全体にわたる一貫性のある最適化を可能にする。

実験結果

リサーチクエスチョン

  • RQ1数千ノードにわたる大規模分散ディープラーニング学習における通信オーバーヘッドをどのように最小化できるか?
  • RQ2データ並列型ディープラーニングワークロードで高いスケーリング効率を達成するために、どのようなシステムレベルの最適化が必要か?
  • RQ3遅延に敏感な通信(例:最初のレイヤーの勾配)を優先することで、全体のトレーニングパフォーマンスにどのような影響を与えるか?
  • RQ4従来のデータ並列またはモデル並列とは異なり、ハイブリッド並列処理と計算・通信の重ね合わせを活用することで、スケーリングはどの程度向上できるか?
  • RQ5MLSLのような統一通信ライブラリは、多様なディープラーニングフレームワーク間で一貫したパフォーマンス向上を実現できるか?

主な発見

  • Intel Xeon Gold 6148プロセッサとOmnipathファブリックを用いた256ノード環境で、ResNet-50学習において90%のスケーリング効率を達成した。
  • メッセージ優先順位付けにより、標準のMPIと比較して最初のレイヤー通信の露出時間が1.8倍~2.2倍短縮され、遅延に敏感なパフォーマンスが顕著に向上した。
  • 科学的パターン分類タスクにおいて9,600個のXeon-Phiノードまでスケーリング可能であり、極限規模のHPCワークロードへの実現可能性を示した。
  • バルセロナ超計算センターでは、256ノードで40分間でResNet-50を学習し、トップ-1検証精度75.8%を達成した。
  • 64ノード環境では、TensorFlowとMLSLの統合により93%を超えるスケーリング効率を達成し、ネイティブのHorovod-MPI実装を上回った。
  • MLSLにおける低精度通信と永続的集約の活用により、帯域幅の圧力を軽減し、通信効率を向上させつつ、モデルの精度を損なわずに済ませた。

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

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

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

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