DeepSeekは、並列処理の最適化を目的とした3つの新技術を同時に公開した。これらは、双方向パイプライン並列アルゴリズム「DualPipe」、MoE(Mixture of Experts)向け負荷分散アルゴリズム「EPLB」、およびトレーニングと推論フレームワークのパフォーマンス分析データ「Profiling Data」で構成される。
DualPipeは、計算と通信のフェーズを完全に重ね合わせることで、従来のパイプライン並列処理で発生していた「パイプラインバブル」を削減し、トレーニング効率を大幅に向上させる。これにより、リソースの無駄を削減しながら、モデルの学習速度を最大化できる。DeepSeek-V3技術報告書で詳細が解説され、GitHubでも公開されている。
EPLB(Expert Parallelism Load Balancer)は、MoEモデルにおけるGPU間の負荷均等化を実現するアルゴリズムである。異なるエキスパートが異なるGPUに割り当てられるが、ワークロードの偏りによりリソースの不均衡が生じることが課題だった。EPLBは、負荷の高いエキスパートを複製し、異なるGPUに効率的に配置することで、計算リソースを最適化する。さらに、グループ制限付きエキスパートルーティングにより、同じグループのエキスパートを可能な限り同一ノードに配置し、ノード間の通信コストを削減する。
Profiling Dataは、計算と通信の重なり戦略や低レベルの実装詳細を示しており、モデルの最適化に不可欠な情報を提供する。データはPyTorch Profilerを使用して収集され、Chromeのchrome://tracingやEdgeのedge://tracingで視覚化が可能。トレーニングデータには、DualPipeの各フェーズにおける計算と通信の重なりが記録されており、推論データはprefillingフェーズと生成フェーズの2つに分かれている。
これらの技術がGitHubで公開されると、わずか10分で300以上のスターを獲得し、開発者コミュニティから大きな注目を集めた。DualPipeの双方向並列処理の革新性や、EPLBによる効率的なGPU負荷分散の仕組みが特に評価されている。今後、DeepSeekの研究成果がさらに発展し、実際のAIトレーニング環境での適用が拡大することが期待される。
【関連リンク】
DualPipe(GitHub):https://github.com/deepseek-ai/DualPipe
EPLB(GitHub):https://github.com/deepseek-ai/eplb
Profiling Data(GitHub):https://github.com/deepseek-ai/profile-data