Repository navigation
fix: fix Kimi-VL encoder parallelism - #30869
Conversation
There was a problem hiding this comment.
Code Review
This pull request implements tensor parallelism (TP) and data parallelism (DP) support for the Kimi-VL model and its MoonViT encoder. It also introduces several performance optimizations, including caching interpolated positional embeddings, passing precomputed max_seqlen to avoid GPU synchronization, and caching accepted kwargs in image processor patches to bypass slow exception paths. The review feedback highlights a critical issue where the new positional embedding cache grows without bound during inference, potentially causing a GPU memory leak and Out-Of-Memory (OOM) crashes. It is recommended to limit the cache size and evict old entries to ensure stability in long-running serving environments.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
|
/tag-and-rerun-ci |
Summary
Before / after behavior
This is primarily a Kimi-VL correctness/enablement change, not a valid before/after throughput benchmark: before, Kimi-VL TP=1 encoder-DP returns a list where the projector requires a tensor and fails on serving; after, the output is concatenated and the server completes image requests. No cross-engine number is presented as a PR performance result.
Validation
test_encoder_dpmatrix.CI States
Latest PR Test (Base): ✅ Run #29237951501
Latest PR Test (Extra): ❌ Run #29237951515