SHOUJIKE

DeepSeek オープンソース コード、パート 2: GPU 通信を最適化する DeepEP 通信ライブラリ。

2 月 25 日、昨日の Flash MLA のオープンソース リリースに続き、DeepSeek は本日、MoE モデルのトレーニングと推論のための初のオープンソース EP 通信ライブラリである DeepEP をリリースしました。

DeepEPは、MoE(Hybrid Expert)モデルの学習と推論のためのEP(Expert Parallelism)通信ライブラリです。すべてのGPUコアに対して高スループットと低レイテンシを提供し、MoEスケジューリングおよびコンポジションとしても知られています。このライブラリは、FP8を含む低精度演算もサポートしています。

一方、DeepEPは、NVLink(NVIDIAが開発した高速相互接続技術で、主にGPU間の通信で帯域幅の向上とレイテンシの低減に利用される)からRDMA(リモート・ダイレクト・メモリ・アクセスで、ノード間の効率的な通信に利用されるネットワークデータ転送技術)まで、非対称帯域幅転送シナリオに深く最適化されています。高いスループットを提供するだけでなく、トレーニングと推論タスクの両方における高スループット性能を考慮し、SM(ストリーミング・マルチプロセッサ)の台数制御もサポートしています。

レイテンシに敏感な推論デコードのために、DeepEPは低レイテンシカーネルとPure RDMAを搭載し、レイテンシを最小限に抑えます。また、このライブラリは、SMリソースを消費することなく、通信計算をオーバーラップさせるためのフックベースの手法も導入しています。

DeepSeek は、DeepEP の実装が DeepSeek-V3 の論文と若干異なる可能性があると述べています。

DeepSeek は、DeepEP の実際のパフォーマンスもリストします。

標準カーネルはH800(NVLinkの最大帯域幅は約160 GB/秒)でテストされました。各デバイスはCX7 InfiniBand 400 Gb/秒 RDMAネットワークカード(最大帯域幅は約50 GB/秒)に接続され、DeepSeek-V3/R1の事前学習設定(バッチあたり4096トークン、7168個の隠れ層ユニット、最初の4グループ、最初の8個のエキスパート(モデル)、FP8形式のスケジューリング、BF16形式のマージ)に従って実行されました。

低レイテンシカーネルはH800でテストされました。各H800はCX7 InfiniBand 400 Gb/s RDMAネットワークカード(最大帯域幅約50 GB/s)に接続され、DeepSeek-V3/R1の標準的な実稼働環境設定(バッチあたり128トークン、7168個の隠れ層ユニット、最初の8つのエキスパート(モデル)、FP8形式でスケジュール設定、BF16形式でマージ)に従って実行されました。

DeepEP ランタイム環境の要件:

Hopper GPU (将来的にはさらに多くのアーキテクチャやデバイスをサポートする可能性があります)

Python 3.8以上

CUDA 12.3以上

PyTorch バージョン 2.1 以上

NVLink は内部ノード通信に使用されます。

ノード間通信用のRDMAネットワーク