SandAI-org/MagiAttention
A Distributed Attention Towards Linear Scalability for Ultra-Long Context, Heterogeneous Data Training
何を解決するか
MagiAttentionは、分散学習における超長文脈および異種マスクパターンに対するアテンション機構のスケーラビリティの課題に対処します。線形スケーラビリティと高いパフォーマンスを提供し、通常のコンテキスト並列(CP)学習設定で発生する計算および通信オーバーヘッドを低減することを目指しています。
動作方法
以下の主要なイノベーションを通じて分散アテンション機構を実装しています:
- Flex-Flash-Attention (FFA):一般化されたアテンションマスク定式化(
AttnSlice)と、多様なマスクタイプのコンパクトな表現と効率的な分散パーティショニングを可能にするカスタムカーネル。 - 計算負荷のバランス:細粒度のチャンクレベルシャーディング戦略とディスパッチソルバーを用いて、CPランク間で作業負荷を均等に分配します。
- ゼロ冗長通信:従来のリング型P2P通信を、前方および後方パスで冗長通信量を排除する新しい
GroupCastおよびGroupReduceプリミティブに置き換えます。 - 適応的マルチステージオーバーラップ:計算と通信のスケジューリングにより、レイテンシを隠蔽しGPUの利用効率を最大化します。
対象ユーザー
超長文脈を持つ大規模モデルを学習する研究者や開発者向けです。たとえば、自己回帰型動画生成モデル(例:Magi-1)や、Megatron-LM、PyTorch FSDP、HuggingFace Transformersなどのフレームワークと統合するケースに適しています。
主な特徴
- 線形スケーラビリティ:H100およびB200 GPU上で分散学習環境でほぼ線形のスケーラビリティを実現。
- 広範なハードウェア対応:Hopper GPU上でFlash-Attention 3と同等のパフォーマンスを発揮し、Flash-Attention 4によるBlackwell GPUへの早期対応を実現。
- フレームワーク統合:Megatron-LM、PyTorch FSDP、HuggingFace Transformersとの容易な統合をサポート。
- 高度なマスク処理:多様かつ重複するアテンションマスクパターンをネイティブでサポート。
- アテンションシンク:分散学習可能なアテンションシンク機構の拡張を含む。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- Dispatch
- プロジェクト