Skip to content

feat(vllm_dissag): Kimi-K3-MXFP4 2P/2D disagg framework integration - #237

Draft
MIR-AMD wants to merge 1 commit into
ROCm:developfrom
MIR-AMD:mir/kimik3-framework-only
Draft

feat(vllm_dissag): Kimi-K3-MXFP4 2P/2D disagg framework integration#237
MIR-AMD wants to merge 1 commit into
ROCm:developfrom
MIR-AMD:mir/kimik3-framework-only

Conversation

@MIR-AMD

@MIR-AMD MIR-AMD commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Adds Kimi-K3-MXFP4 (MI300X gfx942 MXFP4 MoE, 2.8T params, 896 experts) to the vllm_dissag framework as a first-class disaggregated model
  • Config-only integration: 10 files edited in scripts/vllm_dissag/, no standalone recipe folder
  • Topology: 2P/2D (2 prefill + 2 decode nodes), TP2×DP8 per pool, MoRI-EP all2all, MoRIIO KV connector

Changes

  • models.yaml: K3 recipe env anchor + model entry (20 env vars, prefill.dp/decode.dp flags)
  • run_xPyD_models.slurm: add to VALID/MORI_EP_VALID/WIDE_EP_ONLY allowlists + 2P/2D validation + JIT cache split
  • connectors/moriio.sh: _moriio_is_kimik3 gating (pod_hosts KV config, TP2×DP8, api-server-count, headless KV)
  • vllm_disagg.sh: PREFILL/DECODE_POD_HOSTS export + K3 DP math + _model_config_to_array helper
  • tests/argv_assert.sh: K3 offline assertions (proves K3 works AND non-K3 unchanged)

Regression safety

All K3 changes are guarded by _moriio_is_kimik3() / MODEL_NAME=="Kimi-K3-MXFP4". Three shared improvements (cache dir default, eval→_model_config_to_array, MAX_NUM_BATCHED_TOKENS flag) are model-agnostic and no-op for non-K3.

Offline argv_assert.sh validates: 37 passed, 0 failed (including existing DeepSeek/Llama assertions).

Image

Image build is documented in README.MD. Operators build separately from public repos:

docker build -f <path>/Dockerfile.kimik3_disagg \
  --build-arg VLLM_REF=kimi-k3-wideep-disagg-fullsource-v3 \
  -t kimik3-wideep-disagg:latest .

Related

Test plan

  • bash -n on all .sh files
  • YAML lint on models.yaml
  • argv_assert.sh offline tests (37/37 pass)
  • Residue grep (zero internal paths)
  • Scope gate (only scripts/vllm_dissag/* files)
  • Optional: 4-node live smoke with NIAH

🤖 Generated with Claude Code

Adds Kimi-K3-MXFP4 (MI300X gfx942 MXFP4 MoE) to the vllm_dissag framework:
- models.yaml: K3 recipe env anchor + model entry (TP2×DP8, MoRI-EP)
- run_xPyD_models.slurm: allowlists + 2P/2D validation + JIT cache split
- moriio.sh: K3-gated topology (pod_hosts, api-server-count, headless KV)
- vllm_disagg.sh: pod hosts export + _model_config_to_array helper
- argv_assert.sh: K3 offline tests

Config-only integration; image build documented in README.

Co-Authored-By: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant