yandex/YaFSDP
YaFSDP: Yet another Fully Sharded Data Parallel
解決する課題
YaFSDPは、大規模言語モデル(LLM)の事前学習を最適化するために設計されており、特にSharded Data Parallelismにおける通信およびメモリ操作に関連するオーバーヘッドをターゲットとしています。高メモリ負荷条件下でのGPU利用率とパフォーマンスを向上させることで、PyTorchのFSDP(Fully Sharded Data Parallel)に代わる、より高速な選択肢を提供することを目指しています。
仕組み
Transformer型のニューラルネットワークアーキテクチャに特化してチューニングされたSharded Data Parallelismフレームワークを実装しています。通信およびメモリ操作のオーバーヘッドを削減することで、複数のGPUにわたるトレーニング実行中の反復時間を短縮します。
対象ユーザー
Hugging Faceスタックを使用し、大規模GPUクラスター(64〜256デバイス)で大規模なTransformerモデル(Llama 2やLlama 3など)をトレーニングするMLエンジニアおよび研究者。
ハイライト
- パフォーマンス向上: 標準的なFSDPと比較して、LLMの事前学習が最大20%高速化。
- スケーラビリティ: 最大256枚のA100 GPUを使用し、7Bから70Bパラメータのモデルでベンチマークを実施。
- スケーラビリティ: 因果的事前学習(causal pre-training)および教師あり微調整(SFT)をサポート。
- 統合: 提供されるサンプルやDockerイメージを通じて、Hugging Faceエコシステムと連携。
関連
- Dispatch
- Dispatch
- Dispatch
- プロジェクト
- Dispatch