Inference systems
vLLM 0.28、ディスク階層KVキャッシュを追加、Model Runner V2はエンコード/プリフィル/デコード分離に対応
vLLM 0.28.0では、KVキャッシュを階層化してディスクへオフロードできるようになり、外部のセカンダリストレージマネージャーも利用可能になった。これにより、長いコンテキストを扱うサービスは、GPUおよびメインメモリの容量だけに制約されなくなる。新バージョンではKimi-K3、DeepSeek V4、投機的デコード、E/P/D分離も進展した一方、複数のデフォルト値と依存インターフェースが変更されている。

vLLM 0.28.0の中核的な変更は、KVキャッシュの階層化をCPUからディスクへ拡張したことだ。SimpleCPUOffloadConnectorはdisk offloadをサポートし、外部モジュールは`module_path`を通じてセカンダリtier managerを実装できる。システムは部分的なロード結果の報告や階層別メトリクスの出力にも対応し、並列トポロジーに依存しない標準CPUレイアウトを使用する。これにより、サーバー側では低速なストレージと引き換えに、再利用可能なプレフィックスと長いコンテキストの容量を拡大できる。ただし、実際の効果はSSDのレイテンシ、スループット、ヒット率、リクエストスケジューリングに左右されるため、ディスクをGPUメモリと同等に扱うことはできない。
Model Runner V2には、encoder/prefill/decode(E/P/D)分離、重みのオフロード、多層MTP KV cache、encoder CUDA Graphのほか、attention-freeモデルとpoolingワークロードのサポートが追加された。Rust frontendとgRPC経路には、独立したrenderer、マルチモーダル画像推論、データ並列rankルーティング、強化学習ライフサイクル制御が追加された。protobuf schemaもBufで公開され、大規模デプロイにおいて前処理、モデル実行、コントロールプレーンを個別に進化させやすくなった。
モデル最適化はKimi-K3とDeepSeek V4に集中している。公式リリースノートには、融合FlashKDA kernel、Decode Context Parallel、sequence-parallel GEMM-RS、およびGPU 1基あたり約17 GiBを削減できるshared-expert shardingが挙げられている。DeepSeek V4では、sparse MLA、MTP/DSpark投機的デコード、ROCmサポートが追加された。ただし、これらの数値の多くは特定のkernelまたは構成における内部測定値であり、エンドツーエンドのスループットへそのまま一般化することはできない。
アップグレード前には破壊的変更を確認する必要がある。bitsandbytesはプラグインへ移行し、Transformersの最小依存バージョンは5.15へ引き上げられ、従来のKV/attentionオプション2つが削除された。`max_num_batched_tokens`のデフォルト値は8192から16384へ増加し、BlackwellのCUDA Graph capture上限も引き上げられている。本番環境では、階層型キャッシュと新runnerを有効にするか判断する前に、time to first token、テールレイテンシ、ディスクのwrite amplification、障害復旧を改めて測定すべきだ。