# CRAFT: Fine-Grained Cost-Aware Expert Replication For Efficient Mixture-of-Experts Serving
> [!info] Talk metadata
> - **会議:** [[MLSys2026]] Day 3 (May 20 / Wed)、Grand Ballroom 1、16:30 - 16:45 PDT
> - **登壇者:** Adrian Zhao (Amazon / University of Toronto)、Zhenkun Cai (Amazon)、Zhenyu Song (Amazon)、Lingfan Yu (Amazon)、Haozheng Fan (Amazon)、Jun Wu (Amazon)、Yida Wang (Amazon)、Nandita Vijaykumar (Amazon / University of Toronto)
> - **URL:** https://mlsys.org/virtual/2026/oral/3731
> [!abstract] 概要(論文)
> Mixture-of-Experts (MoE) はほぼ一定の計算コストで大規模言語モデルを効率的にスケールする主流アーキテクチャである。エキスパート並列(EP)はエキスパートをデバイス間に分散配置するが、推論時にトークンレベルの負荷不均衡を引き起こす。エキスパートレプリケーションは高負荷エキスパートを複製してこの不均衡を緩和する広く採用された手法であるが、大規模デプロイでは多くのレプリカが限界的改善しかもたらさない過剰複製に陥りやすい。レプリカは大量の GPU メモリを消費し、リソース競合やスループット劣化を招く可能性がある。本研究は CRAFT を提案する。CRAFT は与えられたメモリ予算下で負荷均衡を最大化するエキスパートレプリケーションフレームワークであり、推定されるレプリケーション利得に基づきレイヤ単位の細粒度レプリカ割当を行う。既存のサービングフレームワークへモデル再訓練なしにシームレスに統合でき、評価では既存レプリケーション手法に対し平均 1.15 倍(最大 1.2 倍)のグッドプット向上を達成した。
## テーゼ
エキスパートレプリケーションの利得はレイヤごとに大きく異なり、レプリカ数に対して劣線形にスケールする。既存手法(EPLB)のように全レイヤ一律にレプリカを割り当てる方式はメモリを浪費する。CRAFT はレイヤごとのレプリケーション利得を推定し、利得の高いレイヤに集中的にレプリカを配分することで、EPLB の約 7 分の 1 のレプリカ数で同等以上の負荷均衡を実現し、節約したメモリを KV キャッシュに充てることでスループットを向上させる。
## 問題設定
MoE モデルを EP でデプロイすると、ルータが入力トークンに基づきエキスパートを選択するため、一部のホットエキスパートにトークンが偏る。この偏りはデバイスレベルの負荷不均衡を引き起こし、(1) 低負荷 GPU のアイドル化と (2) All-to-All 通信時のネットワーク輻輳を生む。
既存の負荷均衡手法は二種類ある。
- **エキスパート配置(Placement)**: ホット・コールドエキスパートを同一 GPU に配置して平均化する。メモリオーバーヘッドはないが、極端な偏り(少数エキスパートが負荷の大半を占めるケース)には対応できない。
- **エキスパートレプリケーション**: ホットエキスパートを複製してトラフィックを分散する。EPLB は MoE レイヤあたり GPU あたり 1 レプリカの一律複製を行う。64 GPU 構成では MoE レイヤあたり最低 63 レプリカが追加され、大半が利得に寄与しないままメモリを消費する。
本研究が対象とするモデルは DeepSeek-R1-671B(58 MoE レイヤ、256 エキスパート、top-8 ルーティング)と Kimi-K2-1000B(60 MoE レイヤ、384 エキスパート、top-8 ルーティング)である。
## 提案手法
CRAFT はエンドツーエンドのエキスパートレプリカ割当フレームワークであり、3 つのステップで動作する。
### ステップ 1: レイヤごとのレプリケーション利得推定
各レイヤについて、$K = \log_2 D + 1$ 個の異なるレプリカ数(2 の幾何級数)でエキスパート負荷分布を再生し、各レプリカ数における負荷均衡度(balancedness = 平均負荷 / 最大負荷)の改善量を測定する。この結果を $L \times K$ の利得行列 $T$ にまとめる。
4 つの重要な観測結果が動機となっている。
1. **レプリケーション効果はレイヤ間で異なる**: 高スキュー(ピーク対平均 > 10 倍)のレイヤは大きな利得を得るが、均等分布のレイヤはほとんど利得がない(スライドの Layer A: 0.037 → 0.616 vs Layer B: 0.4 → 0.431)。
2. **クラスタ規模拡大に伴いレプリケーションの重要性が増す**: GPU あたりのエキスパート数が減り配置による平均化効果が弱まるため。
3. **負荷均衡はレプリカ数に対して劣線形にスケールする**: 16 レプリカを超えると利得はほぼ頭打ちになる。
4. **有効レプリカ数はレイヤによって異なる**: 利得が飽和するレプリカ数は 1 から 16 までレイヤごとに異なる。
### ステップ 2: レプリケーションファクタ $R$ の決定
$R$ は GPU あたりのレプリカ数であり、レプリケーションに充てるメモリ量を制御する。総レプリカ数は $r = R \times D$($D$ は GPU 数)。ユーザが手動で設定するか、CRAFT がステップ 1 の利得曲線に基づき、レプリカあたりの限界利得が最大となる $R$ を自動選択する。評価では $R = 8$ が多くの構成で最良であった。
### ステップ 3: 利得駆動レプリカ割当
$r$ 個のレプリカ予算下でレイヤごとに 1 つのレプリカ数を選択し、総レプリケーション利得を最大化する問題を**多重選択ナップサック問題(MCKP)**として定式化する。MCKP は NP 困難であるが、パラメータ空間が小さい($D$, $K$, $L$)ため動的計画法で擬多項式時間に解ける。
### キャパシティ認識エキスパート配置
レイヤごとにレプリカ数が異なるため、GPU へのエキスパート割当が非自明になる。CRAFT は二つの目的を同時に達成する貪欲アルゴリズムを用いる。
- **主目的**: 追加レプリカは常にエキスパート保持数が最少の GPU に割り当て、デバイス間のメモリ使用量(エキスパートキャパシティ)の差を最大 1 に抑える。
- **副目的**: レプリカをノード間でインターリーブ配置し、レイヤ内のノードレベル負荷不均衡を最小化する。
最後に、キャパシティ認識の貪欲配置アルゴリズムが最も負荷の高いエキスパートを最も負荷の低いデバイスへ反復的に割り当てる。
### ワークロードシフトへの適応
CRAFT は EPLB が提唱した定期的オンラインリバランスの仕組みにドロップイン統合できる。サービングフレームワークが推論中にエキスパート負荷分布をサンプリングし、設定間隔(評価では約 20 分)で CRAFT を再実行して新しいレプリカ配置計画を生成する。エキスパート重みの再配置は CPU ピニングと GPU への非同期ストリーミングにより推論と並行して実行できる。
## 実験・評価
### 環境
- **ハードウェア**: AWS EC2 p4de.24xlarge インスタンス、ノードあたり NVIDIA A100 80 GB x 8(NVLink 接続)、最大 8 ノード(64 GPU)
- **ネットワーク**: ノード間 EFA、ノード内 NVLink
- **モデル**: DeepSeek-R1-671B、Kimi-K2-1000B
- **並列化構成**: DP=8、TP=8(ヘッド並列)、EP=64
- **サービングフレームワーク**: SGLang v0.4.8(EPLB 統合済み)
- **データセット**: FinePDF(独語・日中語分割)、Lambada、RedPajama-1T(arXiv 分割)
- **入力長**: 4096 トークン、出力長: 256 トークン
- **ベースライン**: BASE(配置のみ、レプリケーションなし)、EPLB(MoE レイヤあたり $L$ 個のレプリカを GPU ごとに一律割当)
### 主要結果
**グッドプット向上(スライド優先値):**
- EPLB 比で平均 1.15 倍、最大 1.2 倍のグッドプット向上(DeepSeek-R1、8 ノード)
- Kimi-K2 では平均 1.12 倍(最大 1.17 倍)
- CRAFT は EPLB の 7.25 倍(DeepSeek-R1)および 7.5 倍(Kimi-K2)少ないレプリカで同等以上の負荷均衡を達成
**TTFT(Time-to-First-Token)改善:**
- BASE 比で TTFT を平均 29%(最大 58%)削減。EPLB(平均 30%、最大 59%)とほぼ同等
**メモリ効率:**
- EPLB は KV キャッシュサイズを 19%(DeepSeek-R1)〜75%(Kimi-K2、6 ノード)縮小させるが、CRAFT は 6% の縮小に留まり、より大きな KV キャッシュとバッチサイズを確保できる
- 6 ノード構成では EPLB が KV キャッシュを 75% 削減するため BASE より低いグッドプットとなるが、CRAFT は BASE 比 1.14 倍の向上を維持
**クラスタスケーリング:**
- CRAFT はクラスタ規模 6 → 8 → 12 ノードの拡大に伴い平均 1.65 倍および 1.6 倍のグッドプットスケーリングを達成し、EPLB を上回る
**ワークロードシフト耐性:**
- 4 データセットの混合比率をシフトさせる合成ワークロード(日周変動 + バースト性ノイズ)において、CRAFT は定期リバランスにより EPLB と同等の負荷均衡を 7 分の 1 のレプリカで維持
**スピードアップ内訳(Figure 11):**
- MoE 計算自体の高速化は限定的(トークン数一定のため)
- All-to-All Dispatch がレプリケーションによる均等分散で中程度の高速化
- All-to-All Combine が大幅に高速化するが、MoE ブロック全体に占める割合は小さい
- 主要な利得は KV キャッシュ増大による並行性向上に起因
**オーバーヘッド:**
- 推論時のランタイムオーバーヘッドはゼロ
- 初期化時のレプリカ利得推定は約 10 秒(フレームワーク初期化が数分を要するため無視できる)
- オンラインリバランス時の推定オーバーヘッドは CPU 上で推論バッチと並行処理可能
## 結論・オープン課題
CRAFT は、レイヤ単位の細粒度レプリケーションにより低メモリコストでエキスパート負荷不均衡を緩和する実用的フレームワークである。EPLB のドロップイン置換として SGLang 等の主流サービングフレームワークに統合でき、モデル再訓練や追加のランタイムオーバーヘッドを必要としない。
論文で言及されている関連方向として以下がある。
- **エキスパートシャーディング**: テンソル並列の変種でエキスパート重みをデバイス間に分散する手法。負荷均衡には有利だがノード間通信オーバーヘッドが大きい。CRAFT の細粒度レプリケーションとは直交的であり併用可能。
- **ルーティング予測・改変**: 推論中にルーティングパタンを予測してプリフェッチやキャッシングを行う手法群。予測ミスや対象リソースの制約が課題。CRAFT はルーティングメカニズムを変更しないため、これらとも組み合わせられる。
- **GraceMoE**: エキスパートをグループ化してレプリカを動的に割り当てる手法。ただし単一グループ内の複製に限定されるため過剰複製でグルーピングの効果が低下する。CRAFT のレイヤ粒度レプリケーションは直交的であり、複数グループ間でのレプリケーションへ拡張可能。