ホームへ戻る

推論與執行期系統

LMDeploy 0.17、DeepEPv2とMooncake KVストレージを導入し、ノード間MoE推論のデータパスを拡張

LMDeploy 0.17.0は、TurboMindにDeepEPv2のexpert parallelバックエンドを追加し、KV connectorをMooncake Storeに接続した。新バージョンはKimi K2.6、2の累乗に限定されないページサイズ、構造化レスポンスにも対応するが、ハードウェアをまたぐエンドツーエンドの性能データは示されていない。

Jacek Sroka, Archiwum Metal Mind Productions · Public domain · Image source
zh-Hant

InternLMは9月1日、LMDeploy 0.17.0をリリースした。今回の更新は、大規模MoEモデルにおける通信、メモリ、サービングのデータパスに重点を置いている。TurboMindでは、MoE all-to-allバックエンドとしてDeepEPv2を選択できるようになった。推論時には、各GPUがルーティング結果に基づいて、対象のexpertを保持するデバイスへtokenをdispatchし、その後、出力をcombineする。統合内容には、token dispatch/combine、expert parallelおよびtensor parallel用の独立した通信グループ、マルチノード処理、`--moe-a2a-backend`設定項目が含まれる。これにより、通信負荷の高いexpert parallelismが、既存のNCCLパスだけに依存する必要がなくなる。

もう一つの変更点は、KV connectorがMooncake Storeに対応したことだ。推論エンジンが外部ストレージを介してKV cacheを交換できるようになり、prefillとdecodeの分離、インスタンス間でのキャッシュ再利用、階層型ストレージに新たな接続ポイントを提供する。ただし、リリースノートではcache hit rate、ネットワークレイテンシ、障害復旧テストの結果が公開されていない。そのため、あらゆる長文コンテキストのサービングが改善されると直接結論づけることはできない。実際の効果は、promptの重複度、相互接続帯域幅、キャッシュのライフサイクルに引き続き左右される。

モデルおよびコア機能では、PyTorch engineがKimi K2.6に新たに対応し、compact-blocked FP8 MoEのルーティング準備とspeculative decodingの前処理・後処理を最適化した。paged attentionとV4 prefillにはPDLが採用され、メモリページサイズも2の累乗に限定されなくなった。サービング層では、`n>1` choicesに対応するサーバー側fan-outが追加されたほか、TurboMindとPyTorch engineの両方が`structural_tag`形式を出力できるようになった。Anthropic互換エンドポイントでは、inline system messageに関する問題が修正された。

アップグレードする場合は、特に2点の互換性を検証する必要がある。SM90より前のGPUではFP8 weight-only fallbackが復活し、DeepEPv2のビルドではNCCLのバージョンおよびシンボル互換性が要件となる。公式は今回のリリースに合わせて、統一条件下でのスループット、time to first token、マルチノードのスケーリング曲線を提供していない。導入前に、自社のモデル、バッチ分布、トポロジーを使用してNCCLとDeepEPの各バックエンドを比較し、Mooncakeが利用できない場合のフォールバック動作もテストすべきだ。

出典

  1. LMDeploy v0.17.0 release notes
  2. LMDeploy documentation
  3. LMDeploy v0.17.0 Adds DeepEPv2, Kimi K2.6, FP8 MoE Optimizations