Skip to main content
QUICK REVIEW

[論文レビュー] Chimera: Efficiently Training Large-Scale Neural Networks with Bidirectional Pipelines

Shigang Li, Torsten Hoefler|arXiv (Cornell University)|Jul 14, 2021
Parallel Computing and Optimization Techniques参考文献 53被引用数 8
ひとこと要約

Chimeraは、最大2.34倍のスループット向上を実現する双方向パイプライン並列化方式を提案する。複数のパイプライン段階にわたる順方向および逆方向の実行を知的にスケジューリングすることで、バブルを最大50%削減し、活性化メモリ使用量をバランスさせ、2,048 GPUで最小限の精度損失で効率的な同期学習を可能にする。

ABSTRACT

Training large deep learning models at scale is very challenging. This paper proposes Chimera, a novel pipeline parallelism scheme which combines bidirectional pipelines for efficiently training large-scale models. Chimera is a synchronous approach and therefore no loss of accuracy, which is more convergence-friendly than asynchronous approaches. Compared with the latest synchronous pipeline approach, Chimera reduces the number of bubbles by up to 50%; benefiting from the sophisticated scheduling of bidirectional pipelines, Chimera has a more balanced activation memory consumption. Evaluations are conducted on Transformer based language models. For a GPT-2 model with 1.3 billion parameters running on 2,048 GPU nodes of the Piz Daint supercomputer, Chimera improves the training throughput by 1.16x-2.34x over the state-of-the-art synchronous and asynchronous pipeline approaches.

研究の動機と目的

  • 大規模ディープラーニング学習における既存のパイプライン並列化方式の非効率性とメモリのアンバランスを解消すること。
  • パイプラインのバブルを低減し、学習の収束性や精度を損なわず、システムの利用効率を向上させること。
  • 同期学習フレームワーク内でのアクセラレータ間の活性化メモリ消費をバランスさせること。
  • GPT-2 や BERT などの大規模モデルを分散スーパーコンピュータ上で高スループットかつスケーラブルに学習可能にすること。
  • 多様なモデルおよびシステムアーキテクチャに適応可能な柔軟で設定可能なパイプラインスケジューリング戦略を提供すること。

提案手法

  • Chimeraは、複数のパイプライン段階で順方向および逆方向の実行を同時に実行する双方向パイプラインを採用し、無駄な待機時間を削減し、バブルを低減する。
  • 順方向の実行を倍加し、逆方向を半減する、または直接連結するという新しいスケジューリング戦略を用いて、順方向と逆方向のワークロードのアンバランスを管理する。
  • 陳腐化した重みを避けることで同期学習を維持し、収束の安定性と精度を保証する。
  • パイプライン段階間のポイントツーポイント通信を活用し、最適化されたマイクロバッチおよびパイプライン深さの設定により、allreduceのオーバーヘッドを最小限に抑える。
  • 通信、計算、メモリ使用量のバランスを取るために、動的にパイプライン深さ(D)とマイクロバッチサイズ(B)を設定する。
  • 正確なパフォーマンスモデルを活用し、異なるモデルおよびハードウェア環境における最適なスループットを達成するためのシステム設定をガイドする。

実験結果

リサーチクエスチョン

  • RQ1パイプライン並列化をどのように最適化すれば、大規模ディープラーニング学習におけるバブルの低減と利用効率の向上を実現できるか?
  • RQ2双方向パイプラインは、同期学習と収束性を維持したまま、単方向パイプラインよりも高いスループットを達成できるか?
  • RQ3Chimeraは、既存のパイプライン手法と比較して、アクセラレータ間での活性化メモリ消費をどのようにバランスさせているか?
  • RQ4順方向の倍加、逆方向の半減、直接連結といった異なるスケジューリング戦略が、学習効率とスケーラビリティに与える影響は何か?
  • RQ5Chimeraは、再計算のオーバーヘッドを最小限に抑えつつ、どの程度大きなミニバッチサイズや深層モデルにスケーリング可能か?

主な発見

  • 2,048 GPUノードで、13億パラメータのGPT-2モデルに対して、最先端の同期および非同期パイプライン手法と比較して、Chimeraは学習スループットを1.16倍から2.34倍向上した。
  • 既存の同期パイプライン手法と比較して、Chimeraはパイプラインバブルを最大50%削減し、システム利用効率を顕著に向上させた。
  • 直接連結スケジューリングを採用した場合、大規模なミニバッチに対して、GPipe、GEMS、DAPPLEと比較して、それぞれ1.13倍、2.07倍、1.06倍の高速化を達成した。
  • 512 GPUでGPT-2を学習する際、順方向倍加を用いたChimeraは、PipeDream-2BW、GPipe、GEMS、DAPPLEと比較して、それぞれ1.13倍、1.18倍、2.60倍、1.34倍の高速化を達成した。
  • 4つのパイプラインでD=32とした場合、32層のGPT-2モデルでピークパフォーマンスを発揮したが、通常はバブルとallreduceのオーバーヘッドの最適なトレードオフを実現するため、2つのパイプラインが最も高いスループットを達成した。
  • Chimeraは、最先端の手法と同等のピーク活性化メモリコストを維持しながら、アクセラレータ間でのメモリ消費をよりバランスよくした。

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

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

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

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