From e2e69c4fdfd6c1da7008b89c96ff8ebdec17180f Mon Sep 17 00:00:00 2001 From: Xin Li Date: Sat, 18 Jul 2026 11:47:43 -0400 Subject: [PATCH 01/11] feat(minimaxm3): add B200 spread-worker CI configs --- .../8k1k/1p1d-dep2-tp4-c1-c16-8k1k.yaml | 62 +++++++++ .../b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml | 127 ++++++++++++++++++ .../8k1k/2p2d-dep2-tp4-c128-8k1k.yaml | 127 ++++++++++++++++++ .../8k1k/3p2d-dep2-tp4-c256-8k1k.yaml | 127 ++++++++++++++++++ .../8k1k/3p2d-dep2-tp4-c512-8k1k.yaml | 127 ++++++++++++++++++ .../8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml | 127 ++++++++++++++++++ configs/nvidia-master.yaml | 95 +++++++++++++ perf-changelog.yaml | 8 ++ runners/launch_b200-dgxc.sh | 10 +- 9 files changed, 808 insertions(+), 2 deletions(-) create mode 100644 benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p1d-dep2-tp4-c1-c16-8k1k.yaml create mode 100644 benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml create mode 100644 benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml create mode 100644 benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml create mode 100644 benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml create mode 100644 benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p1d-dep2-tp4-c1-c16-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p1d-dep2-tp4-c1-c16-8k1k.yaml new file mode 100644 index 0000000000..cd954e5124 --- /dev/null +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p1d-dep2-tp4-c1-c16-8k1k.yaml @@ -0,0 +1,62 @@ +name: "minimax-m3-vllm-disagg-b200-1p1d-fp4-dep2-tp4-8k1k" +model: + path: "nvidia/MiniMax-M3-NVFP4" + container: "vllm/vllm-openai:cu129-nightly-8e981630c9336233ca9de91452f68918bddbc4e2" + precision: "fp4" +resources: + gpu_type: "b200" + gpus_per_node: 8 + prefill_nodes: 1 + decode_nodes: 1 + prefill_workers: 1 + decode_workers: 1 + gpus_per_prefill: 2 + gpus_per_decode: 4 +dynamo: {install: true, version: 1.3.0.dev20260710} +frontend: {type: dynamo, enable_multiple_frontends: false} +backend: + type: vllm + connector: null + allow_prefill_decode_colocation: true + prefill_environment: {VLLM_FLOAT32_MATMUL_PRECISION: high, UCX_TLS: "cuda_ipc,cuda_copy,rc"} + decode_environment: {VLLM_FLOAT32_MATMUL_PRECISION: high, UCX_TLS: "cuda_ipc,cuda_copy,rc"} + vllm_config: + prefill: + served-model-name: nvidia/MiniMax-M3-NVFP4 + no-enable-flashinfer-autotune: true + tensor-parallel-size: 1 + data-parallel-size: 2 + data-parallel-rpc-port: 13345 + enable-expert-parallel: true + trust-remote-code: true + no-enable-prefix-caching: true + kv-transfer-config: '{"kv_connector": "NixlConnector", "kv_role": "kv_both"}' + attention-config: '{"backend": "FLASHINFER", "use_trtllm_attention": true, "indexer_kv_dtype": "fp8"}' + kv-cache-dtype: fp8 + block-size: 128 + gpu-memory-utilization: 0.90 + max-model-len: 9472 + language-model-only: true + stream-interval: 32 + max-cudagraph-capture-size: 2048 + max-num-batched-tokens: 16384 + decode: + served-model-name: nvidia/MiniMax-M3-NVFP4 + no-enable-flashinfer-autotune: true + tensor-parallel-size: 4 + enable-expert-parallel: false + trust-remote-code: true + no-enable-prefix-caching: true + kv-transfer-config: '{"kv_connector": "NixlConnector", "kv_role": "kv_both"}' + attention-config: '{"backend": "FLASHINFER", "use_trtllm_attention": true, "indexer_kv_dtype": "fp8"}' + kv-cache-dtype: fp8 + block-size: 128 + gpu-memory-utilization: 0.90 + max-model-len: 9472 + language-model-only: true + stream-interval: 32 + max-num-seqs: 1024 + max-num-batched-tokens: 16384 + max-cudagraph-capture-size: 2048 +health_check: {max_attempts: 360, interval_seconds: 10} +benchmark: {type: "sa-bench", isl: 8192, osl: 1024, random_range_ratio: 0.8, concurrencies: "1x4x8x16", req_rate: "inf"} diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml new file mode 100644 index 0000000000..f326344be7 --- /dev/null +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml @@ -0,0 +1,127 @@ +name: "minimax-m3-vllm-disagg-b200-1p2d-fp4-dep2-tp4-c64-8k1k" +model: + path: "nvidia/MiniMax-M3-NVFP4" + container: "vllm/vllm-openai:cu129-nightly-8e981630c9336233ca9de91452f68918bddbc4e2" + precision: "fp4" +resources: + gpu_type: "b200" + prefill_nodes: 1 + prefill_workers: 1 + gpus_per_prefill: 2 + decode_nodes: 2 + decode_workers: 2 + spread_workers: true + gpus_per_decode: 4 + gpus_per_node: 8 +dynamo: {install: true, version: 1.3.0.dev20260710} +frontend: + type: dynamo + enable_multiple_frontends: false + args: + dyn-chat-processor: vllm + reasoning-parser: minimax_m3 +backend: + type: vllm + connector: null + prefill_environment: + VLLM_USE_DEEP_GEMM: '1' + VLLM_SKIP_P2P_CHECK: '1' + VLLM_RANDOMIZE_DP_DUMMY_INPUTS: '1' + NVIDIA_GDRCOPY: '1' + PYTHONUNBUFFERED: '1' + VLLM_LOG_STATS_INTERVAL: '1' + NVSHMEM_IB_ENABLE_IBGDA: '1' + NCCL_CUMEM_ENABLE: '1' + NCCL_MNNVL_ENABLE: '1' + NCCL_NVLS_ENABLE: '1' + NCCL_TIMEOUT: '1800' + TORCH_NCCL_HEARTBEAT_TIMEOUT_SEC: '1800' + VLLM_USE_FLASHINFER_MOE_FP4: '1' + VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: '0' + VLLM_USE_NCCL_SYMM_MEM: '1' + UCX_IB_ROCE_REACHABILITY_MODE: local_subnet + VLLM_NIXL_SIDE_CHANNEL_PORT: '5600' + VLLM_NIXL_ABORT_REQUEST_TIMEOUT: '300' + VLLM_FLOAT32_MATMUL_PRECISION: high + UCX_TLS: cuda_ipc,cuda_copy,rc + decode_environment: + VLLM_USE_DEEP_GEMM: '1' + VLLM_SKIP_P2P_CHECK: '1' + VLLM_RANDOMIZE_DP_DUMMY_INPUTS: '1' + NVIDIA_GDRCOPY: '1' + PYTHONUNBUFFERED: '1' + VLLM_LOG_STATS_INTERVAL: '1' + NVSHMEM_IB_ENABLE_IBGDA: '1' + NCCL_CUMEM_ENABLE: '1' + NCCL_MNNVL_ENABLE: '1' + NCCL_NVLS_ENABLE: '1' + NCCL_TIMEOUT: '1800' + TORCH_NCCL_HEARTBEAT_TIMEOUT_SEC: '1800' + VLLM_USE_FLASHINFER_MOE_FP4: '1' + VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: '0' + VLLM_USE_NCCL_SYMM_MEM: '1' + UCX_IB_ROCE_REACHABILITY_MODE: local_subnet + VLLM_NIXL_SIDE_CHANNEL_PORT: '5600' + VLLM_NIXL_ABORT_REQUEST_TIMEOUT: '300' + VLLM_MOE_DP_CHUNK_SIZE: '384' + VLLM_SHARED_EXPERTS_STREAM_TOKEN_THRESHOLD: '8192' + VLLM_FLOAT32_MATMUL_PRECISION: high + UCX_TLS: cuda_ipc,cuda_copy,rc + vllm_config: + prefill: + tensor-parallel-size: 1 + pipeline-parallel-size: 1 + enable-expert-parallel: true + data-parallel-size: 2 + data-parallel-rpc-port: 13345 + data-parallel-hybrid-lb: true + max-model-len: 9472 + max-num-seqs: 16 + enforce-eager: true + gpu-memory-utilization: 0.9 + max-num-batched-tokens: 16384 + no-enable-chunked-prefill: true + kv-cache-dtype: fp8 + async-scheduling: true + no-enable-prefix-caching: true + trust-remote-code: true + served-model-name: nvidia/MiniMax-M3-NVFP4 + no-enable-flashinfer-autotune: true + kv-transfer-config: '{"kv_connector": "NixlConnector", "kv_role": "kv_both"}' + attention-config: '{"backend": "FLASHINFER", "use_trtllm_attention": true, "indexer_kv_dtype": "fp8"}' + block-size: 128 + language-model-only: true + stream-interval: 32 + max-cudagraph-capture-size: 2048 + decode: + tensor-parallel-size: 4 + pipeline-parallel-size: 1 + enable-expert-parallel: false + max-model-len: 9472 + max-num-seqs: 32 + gpu-memory-utilization: 0.9 + max-num-batched-tokens: 16384 + max-cudagraph-capture-size: 2048 + compilation-config: '{"cudagraph_mode":"FULL_DECODE_ONLY","custom_ops":["+rms_norm"],"pass_config":{}}' + kv-cache-dtype: fp8 + all2all-backend: deepep_low_latency + async-scheduling: true + stream-interval: 32 + enable-dbo: true + dbo-decode-token-threshold: 32 + no-enable-prefix-caching: true + trust-remote-code: true + served-model-name: nvidia/MiniMax-M3-NVFP4 + no-enable-flashinfer-autotune: true + kv-transfer-config: '{"kv_connector": "NixlConnector", "kv_role": "kv_both"}' + attention-config: '{"backend": "FLASHINFER", "use_trtllm_attention": true, "indexer_kv_dtype": "fp8"}' + block-size: 128 + language-model-only: true +health_check: {max_attempts: 360, interval_seconds: 10} +benchmark: + type: "sa-bench" + isl: 8192 + osl: 1024 + random_range_ratio: 0.8 + concurrencies: "64" + req_rate: "inf" diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml new file mode 100644 index 0000000000..6abfca3447 --- /dev/null +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml @@ -0,0 +1,127 @@ +name: "minimax-m3-vllm-disagg-b200-2p2d-fp4-dep2-tp4-c128-8k1k" +model: + path: "nvidia/MiniMax-M3-NVFP4" + container: "vllm/vllm-openai:cu129-nightly-8e981630c9336233ca9de91452f68918bddbc4e2" + precision: "fp4" +resources: + gpu_type: "b200" + prefill_nodes: 1 + prefill_workers: 2 + gpus_per_prefill: 2 + decode_nodes: 2 + decode_workers: 2 + spread_workers: true + gpus_per_decode: 4 + gpus_per_node: 8 +dynamo: {install: true, version: 1.3.0.dev20260710} +frontend: + type: dynamo + enable_multiple_frontends: false + args: + dyn-chat-processor: vllm + reasoning-parser: minimax_m3 +backend: + type: vllm + connector: null + prefill_environment: + VLLM_USE_DEEP_GEMM: '1' + VLLM_SKIP_P2P_CHECK: '1' + VLLM_RANDOMIZE_DP_DUMMY_INPUTS: '1' + NVIDIA_GDRCOPY: '1' + PYTHONUNBUFFERED: '1' + VLLM_LOG_STATS_INTERVAL: '1' + NVSHMEM_IB_ENABLE_IBGDA: '1' + NCCL_CUMEM_ENABLE: '1' + NCCL_MNNVL_ENABLE: '1' + NCCL_NVLS_ENABLE: '1' + NCCL_TIMEOUT: '1800' + TORCH_NCCL_HEARTBEAT_TIMEOUT_SEC: '1800' + VLLM_USE_FLASHINFER_MOE_FP4: '1' + VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: '0' + VLLM_USE_NCCL_SYMM_MEM: '1' + UCX_IB_ROCE_REACHABILITY_MODE: local_subnet + VLLM_NIXL_SIDE_CHANNEL_PORT: '5600' + VLLM_NIXL_ABORT_REQUEST_TIMEOUT: '300' + VLLM_FLOAT32_MATMUL_PRECISION: high + UCX_TLS: cuda_ipc,cuda_copy,rc + decode_environment: + VLLM_USE_DEEP_GEMM: '1' + VLLM_SKIP_P2P_CHECK: '1' + VLLM_RANDOMIZE_DP_DUMMY_INPUTS: '1' + NVIDIA_GDRCOPY: '1' + PYTHONUNBUFFERED: '1' + VLLM_LOG_STATS_INTERVAL: '1' + NVSHMEM_IB_ENABLE_IBGDA: '1' + NCCL_CUMEM_ENABLE: '1' + NCCL_MNNVL_ENABLE: '1' + NCCL_NVLS_ENABLE: '1' + NCCL_TIMEOUT: '1800' + TORCH_NCCL_HEARTBEAT_TIMEOUT_SEC: '1800' + VLLM_USE_FLASHINFER_MOE_FP4: '1' + VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: '0' + VLLM_USE_NCCL_SYMM_MEM: '1' + UCX_IB_ROCE_REACHABILITY_MODE: local_subnet + VLLM_NIXL_SIDE_CHANNEL_PORT: '5600' + VLLM_NIXL_ABORT_REQUEST_TIMEOUT: '300' + VLLM_MOE_DP_CHUNK_SIZE: '384' + VLLM_SHARED_EXPERTS_STREAM_TOKEN_THRESHOLD: '8192' + VLLM_FLOAT32_MATMUL_PRECISION: high + UCX_TLS: cuda_ipc,cuda_copy,rc + vllm_config: + prefill: + tensor-parallel-size: 1 + pipeline-parallel-size: 1 + enable-expert-parallel: true + data-parallel-size: 2 + data-parallel-rpc-port: 13345 + data-parallel-hybrid-lb: true + max-model-len: 9472 + max-num-seqs: 16 + enforce-eager: true + gpu-memory-utilization: 0.9 + max-num-batched-tokens: 16384 + no-enable-chunked-prefill: true + kv-cache-dtype: fp8 + async-scheduling: true + no-enable-prefix-caching: true + trust-remote-code: true + served-model-name: nvidia/MiniMax-M3-NVFP4 + no-enable-flashinfer-autotune: true + kv-transfer-config: '{"kv_connector": "NixlConnector", "kv_role": "kv_both"}' + attention-config: '{"backend": "FLASHINFER", "use_trtllm_attention": true, "indexer_kv_dtype": "fp8"}' + block-size: 128 + language-model-only: true + stream-interval: 32 + max-cudagraph-capture-size: 2048 + decode: + tensor-parallel-size: 4 + pipeline-parallel-size: 1 + enable-expert-parallel: false + max-model-len: 9472 + max-num-seqs: 64 + gpu-memory-utilization: 0.9 + max-num-batched-tokens: 16384 + max-cudagraph-capture-size: 2048 + compilation-config: '{"cudagraph_mode":"FULL_DECODE_ONLY","custom_ops":["+rms_norm"],"pass_config":{}}' + kv-cache-dtype: fp8 + all2all-backend: deepep_low_latency + async-scheduling: true + stream-interval: 32 + enable-dbo: true + dbo-decode-token-threshold: 32 + no-enable-prefix-caching: true + trust-remote-code: true + served-model-name: nvidia/MiniMax-M3-NVFP4 + no-enable-flashinfer-autotune: true + kv-transfer-config: '{"kv_connector": "NixlConnector", "kv_role": "kv_both"}' + attention-config: '{"backend": "FLASHINFER", "use_trtllm_attention": true, "indexer_kv_dtype": "fp8"}' + block-size: 128 + language-model-only: true +health_check: {max_attempts: 360, interval_seconds: 10} +benchmark: + type: "sa-bench" + isl: 8192 + osl: 1024 + random_range_ratio: 0.8 + concurrencies: "128" + req_rate: "inf" diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml new file mode 100644 index 0000000000..a0d8ff18c9 --- /dev/null +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml @@ -0,0 +1,127 @@ +name: "minimax-m3-vllm-disagg-b200-3p2d-fp4-dep2-tp4-c256-8k1k" +model: + path: "nvidia/MiniMax-M3-NVFP4" + container: "vllm/vllm-openai:cu129-nightly-8e981630c9336233ca9de91452f68918bddbc4e2" + precision: "fp4" +resources: + gpu_type: "b200" + prefill_nodes: 1 + prefill_workers: 3 + gpus_per_prefill: 2 + decode_nodes: 2 + decode_workers: 2 + spread_workers: true + gpus_per_decode: 4 + gpus_per_node: 8 +dynamo: {install: true, version: 1.3.0.dev20260710} +frontend: + type: dynamo + enable_multiple_frontends: false + args: + dyn-chat-processor: vllm + reasoning-parser: minimax_m3 +backend: + type: vllm + connector: null + prefill_environment: + VLLM_USE_DEEP_GEMM: '1' + VLLM_SKIP_P2P_CHECK: '1' + VLLM_RANDOMIZE_DP_DUMMY_INPUTS: '1' + NVIDIA_GDRCOPY: '1' + PYTHONUNBUFFERED: '1' + VLLM_LOG_STATS_INTERVAL: '1' + NVSHMEM_IB_ENABLE_IBGDA: '1' + NCCL_CUMEM_ENABLE: '1' + NCCL_MNNVL_ENABLE: '1' + NCCL_NVLS_ENABLE: '1' + NCCL_TIMEOUT: '1800' + TORCH_NCCL_HEARTBEAT_TIMEOUT_SEC: '1800' + VLLM_USE_FLASHINFER_MOE_FP4: '1' + VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: '0' + VLLM_USE_NCCL_SYMM_MEM: '1' + UCX_IB_ROCE_REACHABILITY_MODE: local_subnet + VLLM_NIXL_SIDE_CHANNEL_PORT: '5600' + VLLM_NIXL_ABORT_REQUEST_TIMEOUT: '300' + VLLM_FLOAT32_MATMUL_PRECISION: high + UCX_TLS: cuda_ipc,cuda_copy,rc + decode_environment: + VLLM_USE_DEEP_GEMM: '1' + VLLM_SKIP_P2P_CHECK: '1' + VLLM_RANDOMIZE_DP_DUMMY_INPUTS: '1' + NVIDIA_GDRCOPY: '1' + PYTHONUNBUFFERED: '1' + VLLM_LOG_STATS_INTERVAL: '1' + NVSHMEM_IB_ENABLE_IBGDA: '1' + NCCL_CUMEM_ENABLE: '1' + NCCL_MNNVL_ENABLE: '1' + NCCL_NVLS_ENABLE: '1' + NCCL_TIMEOUT: '1800' + TORCH_NCCL_HEARTBEAT_TIMEOUT_SEC: '1800' + VLLM_USE_FLASHINFER_MOE_FP4: '1' + VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: '0' + VLLM_USE_NCCL_SYMM_MEM: '1' + UCX_IB_ROCE_REACHABILITY_MODE: local_subnet + VLLM_NIXL_SIDE_CHANNEL_PORT: '5600' + VLLM_NIXL_ABORT_REQUEST_TIMEOUT: '300' + VLLM_MOE_DP_CHUNK_SIZE: '384' + VLLM_SHARED_EXPERTS_STREAM_TOKEN_THRESHOLD: '8192' + VLLM_FLOAT32_MATMUL_PRECISION: high + UCX_TLS: cuda_ipc,cuda_copy,rc + vllm_config: + prefill: + tensor-parallel-size: 1 + pipeline-parallel-size: 1 + enable-expert-parallel: true + data-parallel-size: 2 + data-parallel-rpc-port: 13345 + data-parallel-hybrid-lb: true + max-model-len: 9472 + max-num-seqs: 16 + enforce-eager: true + gpu-memory-utilization: 0.9 + max-num-batched-tokens: 16384 + no-enable-chunked-prefill: true + kv-cache-dtype: fp8 + async-scheduling: true + no-enable-prefix-caching: true + trust-remote-code: true + served-model-name: nvidia/MiniMax-M3-NVFP4 + no-enable-flashinfer-autotune: true + kv-transfer-config: '{"kv_connector": "NixlConnector", "kv_role": "kv_both"}' + attention-config: '{"backend": "FLASHINFER", "use_trtllm_attention": true, "indexer_kv_dtype": "fp8"}' + block-size: 128 + language-model-only: true + stream-interval: 32 + max-cudagraph-capture-size: 2048 + decode: + tensor-parallel-size: 4 + pipeline-parallel-size: 1 + enable-expert-parallel: false + max-model-len: 9472 + max-num-seqs: 128 + gpu-memory-utilization: 0.9 + max-num-batched-tokens: 16384 + max-cudagraph-capture-size: 2048 + compilation-config: '{"cudagraph_mode":"FULL_DECODE_ONLY","custom_ops":["+rms_norm"],"pass_config":{}}' + kv-cache-dtype: fp8 + all2all-backend: deepep_low_latency + async-scheduling: true + stream-interval: 32 + enable-dbo: true + dbo-decode-token-threshold: 32 + no-enable-prefix-caching: true + trust-remote-code: true + served-model-name: nvidia/MiniMax-M3-NVFP4 + no-enable-flashinfer-autotune: true + kv-transfer-config: '{"kv_connector": "NixlConnector", "kv_role": "kv_both"}' + attention-config: '{"backend": "FLASHINFER", "use_trtllm_attention": true, "indexer_kv_dtype": "fp8"}' + block-size: 128 + language-model-only: true +health_check: {max_attempts: 360, interval_seconds: 10} +benchmark: + type: "sa-bench" + isl: 8192 + osl: 1024 + random_range_ratio: 0.8 + concurrencies: "256" + req_rate: "inf" diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml new file mode 100644 index 0000000000..eb9705f776 --- /dev/null +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml @@ -0,0 +1,127 @@ +name: "minimax-m3-vllm-disagg-b200-3p2d-fp4-dep2-tp4-c512-8k1k" +model: + path: "nvidia/MiniMax-M3-NVFP4" + container: "vllm/vllm-openai:cu129-nightly-8e981630c9336233ca9de91452f68918bddbc4e2" + precision: "fp4" +resources: + gpu_type: "b200" + prefill_nodes: 1 + prefill_workers: 3 + gpus_per_prefill: 2 + decode_nodes: 2 + decode_workers: 2 + spread_workers: true + gpus_per_decode: 4 + gpus_per_node: 8 +dynamo: {install: true, version: 1.3.0.dev20260710} +frontend: + type: dynamo + enable_multiple_frontends: false + args: + dyn-chat-processor: vllm + reasoning-parser: minimax_m3 +backend: + type: vllm + connector: null + prefill_environment: + VLLM_USE_DEEP_GEMM: '1' + VLLM_SKIP_P2P_CHECK: '1' + VLLM_RANDOMIZE_DP_DUMMY_INPUTS: '1' + NVIDIA_GDRCOPY: '1' + PYTHONUNBUFFERED: '1' + VLLM_LOG_STATS_INTERVAL: '1' + NVSHMEM_IB_ENABLE_IBGDA: '1' + NCCL_CUMEM_ENABLE: '1' + NCCL_MNNVL_ENABLE: '1' + NCCL_NVLS_ENABLE: '1' + NCCL_TIMEOUT: '1800' + TORCH_NCCL_HEARTBEAT_TIMEOUT_SEC: '1800' + VLLM_USE_FLASHINFER_MOE_FP4: '1' + VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: '0' + VLLM_USE_NCCL_SYMM_MEM: '1' + UCX_IB_ROCE_REACHABILITY_MODE: local_subnet + VLLM_NIXL_SIDE_CHANNEL_PORT: '5600' + VLLM_NIXL_ABORT_REQUEST_TIMEOUT: '300' + VLLM_FLOAT32_MATMUL_PRECISION: high + UCX_TLS: cuda_ipc,cuda_copy,rc + decode_environment: + VLLM_USE_DEEP_GEMM: '1' + VLLM_SKIP_P2P_CHECK: '1' + VLLM_RANDOMIZE_DP_DUMMY_INPUTS: '1' + NVIDIA_GDRCOPY: '1' + PYTHONUNBUFFERED: '1' + VLLM_LOG_STATS_INTERVAL: '1' + NVSHMEM_IB_ENABLE_IBGDA: '1' + NCCL_CUMEM_ENABLE: '1' + NCCL_MNNVL_ENABLE: '1' + NCCL_NVLS_ENABLE: '1' + NCCL_TIMEOUT: '1800' + TORCH_NCCL_HEARTBEAT_TIMEOUT_SEC: '1800' + VLLM_USE_FLASHINFER_MOE_FP4: '1' + VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: '0' + VLLM_USE_NCCL_SYMM_MEM: '1' + UCX_IB_ROCE_REACHABILITY_MODE: local_subnet + VLLM_NIXL_SIDE_CHANNEL_PORT: '5600' + VLLM_NIXL_ABORT_REQUEST_TIMEOUT: '300' + VLLM_MOE_DP_CHUNK_SIZE: '384' + VLLM_SHARED_EXPERTS_STREAM_TOKEN_THRESHOLD: '8192' + VLLM_FLOAT32_MATMUL_PRECISION: high + UCX_TLS: cuda_ipc,cuda_copy,rc + vllm_config: + prefill: + tensor-parallel-size: 1 + pipeline-parallel-size: 1 + enable-expert-parallel: true + data-parallel-size: 2 + data-parallel-rpc-port: 13345 + data-parallel-hybrid-lb: true + max-model-len: 9472 + max-num-seqs: 16 + enforce-eager: true + gpu-memory-utilization: 0.9 + max-num-batched-tokens: 16384 + no-enable-chunked-prefill: true + kv-cache-dtype: fp8 + async-scheduling: true + no-enable-prefix-caching: true + trust-remote-code: true + served-model-name: nvidia/MiniMax-M3-NVFP4 + no-enable-flashinfer-autotune: true + kv-transfer-config: '{"kv_connector": "NixlConnector", "kv_role": "kv_both"}' + attention-config: '{"backend": "FLASHINFER", "use_trtllm_attention": true, "indexer_kv_dtype": "fp8"}' + block-size: 128 + language-model-only: true + stream-interval: 32 + max-cudagraph-capture-size: 2048 + decode: + tensor-parallel-size: 4 + pipeline-parallel-size: 1 + enable-expert-parallel: false + max-model-len: 9472 + max-num-seqs: 256 + gpu-memory-utilization: 0.9 + max-num-batched-tokens: 16384 + max-cudagraph-capture-size: 2048 + compilation-config: '{"cudagraph_mode":"FULL_DECODE_ONLY","custom_ops":["+rms_norm"],"pass_config":{}}' + kv-cache-dtype: fp8 + all2all-backend: deepep_low_latency + async-scheduling: true + stream-interval: 32 + enable-dbo: true + dbo-decode-token-threshold: 32 + no-enable-prefix-caching: true + trust-remote-code: true + served-model-name: nvidia/MiniMax-M3-NVFP4 + no-enable-flashinfer-autotune: true + kv-transfer-config: '{"kv_connector": "NixlConnector", "kv_role": "kv_both"}' + attention-config: '{"backend": "FLASHINFER", "use_trtllm_attention": true, "indexer_kv_dtype": "fp8"}' + block-size: 128 + language-model-only: true +health_check: {max_attempts: 360, interval_seconds: 10} +benchmark: + type: "sa-bench" + isl: 8192 + osl: 1024 + random_range_ratio: 0.8 + concurrencies: "512" + req_rate: "inf" diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml new file mode 100644 index 0000000000..8f43fdf977 --- /dev/null +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml @@ -0,0 +1,127 @@ +name: "minimax-m3-vllm-disagg-b200-4p2d-fp4-dep2-tp4-c1024-8k1k" +model: + path: "nvidia/MiniMax-M3-NVFP4" + container: "vllm/vllm-openai:cu129-nightly-8e981630c9336233ca9de91452f68918bddbc4e2" + precision: "fp4" +resources: + gpu_type: "b200" + prefill_nodes: 2 + prefill_workers: 4 + gpus_per_prefill: 2 + decode_nodes: 2 + decode_workers: 2 + spread_workers: true + gpus_per_decode: 4 + gpus_per_node: 8 +dynamo: {install: true, version: 1.3.0.dev20260710} +frontend: + type: dynamo + enable_multiple_frontends: false + args: + dyn-chat-processor: vllm + reasoning-parser: minimax_m3 +backend: + type: vllm + connector: null + prefill_environment: + VLLM_USE_DEEP_GEMM: '1' + VLLM_SKIP_P2P_CHECK: '1' + VLLM_RANDOMIZE_DP_DUMMY_INPUTS: '1' + NVIDIA_GDRCOPY: '1' + PYTHONUNBUFFERED: '1' + VLLM_LOG_STATS_INTERVAL: '1' + NVSHMEM_IB_ENABLE_IBGDA: '1' + NCCL_CUMEM_ENABLE: '1' + NCCL_MNNVL_ENABLE: '1' + NCCL_NVLS_ENABLE: '1' + NCCL_TIMEOUT: '1800' + TORCH_NCCL_HEARTBEAT_TIMEOUT_SEC: '1800' + VLLM_USE_FLASHINFER_MOE_FP4: '1' + VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: '0' + VLLM_USE_NCCL_SYMM_MEM: '1' + UCX_IB_ROCE_REACHABILITY_MODE: local_subnet + VLLM_NIXL_SIDE_CHANNEL_PORT: '5600' + VLLM_NIXL_ABORT_REQUEST_TIMEOUT: '300' + VLLM_FLOAT32_MATMUL_PRECISION: high + UCX_TLS: cuda_ipc,cuda_copy,rc + decode_environment: + VLLM_USE_DEEP_GEMM: '1' + VLLM_SKIP_P2P_CHECK: '1' + VLLM_RANDOMIZE_DP_DUMMY_INPUTS: '1' + NVIDIA_GDRCOPY: '1' + PYTHONUNBUFFERED: '1' + VLLM_LOG_STATS_INTERVAL: '1' + NVSHMEM_IB_ENABLE_IBGDA: '1' + NCCL_CUMEM_ENABLE: '1' + NCCL_MNNVL_ENABLE: '1' + NCCL_NVLS_ENABLE: '1' + NCCL_TIMEOUT: '1800' + TORCH_NCCL_HEARTBEAT_TIMEOUT_SEC: '1800' + VLLM_USE_FLASHINFER_MOE_FP4: '1' + VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: '0' + VLLM_USE_NCCL_SYMM_MEM: '1' + UCX_IB_ROCE_REACHABILITY_MODE: local_subnet + VLLM_NIXL_SIDE_CHANNEL_PORT: '5600' + VLLM_NIXL_ABORT_REQUEST_TIMEOUT: '300' + VLLM_MOE_DP_CHUNK_SIZE: '384' + VLLM_SHARED_EXPERTS_STREAM_TOKEN_THRESHOLD: '8192' + VLLM_FLOAT32_MATMUL_PRECISION: high + UCX_TLS: cuda_ipc,cuda_copy,rc + vllm_config: + prefill: + tensor-parallel-size: 1 + pipeline-parallel-size: 1 + enable-expert-parallel: true + data-parallel-size: 2 + data-parallel-rpc-port: 13345 + data-parallel-hybrid-lb: true + max-model-len: 9472 + max-num-seqs: 16 + enforce-eager: true + gpu-memory-utilization: 0.9 + max-num-batched-tokens: 16384 + no-enable-chunked-prefill: true + kv-cache-dtype: fp8 + async-scheduling: true + no-enable-prefix-caching: true + trust-remote-code: true + served-model-name: nvidia/MiniMax-M3-NVFP4 + no-enable-flashinfer-autotune: true + kv-transfer-config: '{"kv_connector": "NixlConnector", "kv_role": "kv_both"}' + attention-config: '{"backend": "FLASHINFER", "use_trtllm_attention": true, "indexer_kv_dtype": "fp8"}' + block-size: 128 + language-model-only: true + stream-interval: 32 + max-cudagraph-capture-size: 2048 + decode: + tensor-parallel-size: 4 + pipeline-parallel-size: 1 + enable-expert-parallel: false + max-model-len: 9472 + max-num-seqs: 512 + gpu-memory-utilization: 0.9 + max-num-batched-tokens: 16384 + max-cudagraph-capture-size: 2048 + compilation-config: '{"cudagraph_mode":"FULL_DECODE_ONLY","custom_ops":["+rms_norm"],"pass_config":{}}' + kv-cache-dtype: fp8 + all2all-backend: deepep_low_latency + async-scheduling: true + stream-interval: 32 + enable-dbo: true + dbo-decode-token-threshold: 32 + no-enable-prefix-caching: true + trust-remote-code: true + served-model-name: nvidia/MiniMax-M3-NVFP4 + no-enable-flashinfer-autotune: true + kv-transfer-config: '{"kv_connector": "NixlConnector", "kv_role": "kv_both"}' + attention-config: '{"backend": "FLASHINFER", "use_trtllm_attention": true, "indexer_kv_dtype": "fp8"}' + block-size: 128 + language-model-only: true +health_check: {max_attempts: 360, interval_seconds: 10} +benchmark: + type: "sa-bench" + isl: 8192 + osl: 1024 + random_range_ratio: 0.8 + concurrencies: "1024" + req_rate: "inf" diff --git a/configs/nvidia-master.yaml b/configs/nvidia-master.yaml index 3aac1b8378..6fade36f6c 100644 --- a/configs/nvidia-master.yaml +++ b/configs/nvidia-master.yaml @@ -6445,6 +6445,101 @@ qwen3.5-fp8-h100-sglang-agentic: - { tp: 8, ep: 8, kv-offloading: none, conc-list: [1, 2, 4, 8, 12, 14, 16] } - { tp: 8, ep: 8, kv-offloading: dram, kv-offload-backend: { name: hicache }, conc-list: [12, 14, 16, 20, 24, 28, 32, 42] } +minimaxm3-fp4-b200-dynamo-vllm: + image: vllm/vllm-openai:cu129-nightly-8e981630c9336233ca9de91452f68918bddbc4e2 + model: nvidia/MiniMax-M3-NVFP4 + model-prefix: minimaxm3 + runner: b200-multinode + precision: fp4 + framework: dynamo-vllm + router: { name: dynamo-router, version: "1.3.0.dev20260710" } + kv-p2p-transfer: nixl + multinode: true + disagg: true + scenarios: + fixed-seq-len: + - isl: 8192 + osl: 1024 + search-space: + - conc-list: [1, 4, 8, 16] + prefill: + num-worker: 1 + tp: 2 + ep: 2 + dp-attn: true + additional-settings: + - "CONFIG_FILE=recipes/vllm/minimax-m3/b200-fp4/8k1k/1p1d-dep2-tp4-c1-c16-8k1k.yaml" + decode: + num-worker: 1 + tp: 4 + ep: 1 + dp-attn: false + - conc-list: [64] + prefill: + num-worker: 1 + tp: 2 + ep: 2 + dp-attn: true + additional-settings: + - "CONFIG_FILE=recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml" + decode: + num-worker: 2 + tp: 4 + ep: 1 + dp-attn: false + - conc-list: [128] + prefill: + num-worker: 2 + tp: 2 + ep: 2 + dp-attn: true + additional-settings: + - "CONFIG_FILE=recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml" + decode: + num-worker: 2 + tp: 4 + ep: 1 + dp-attn: false + - conc-list: [256] + prefill: + num-worker: 3 + tp: 2 + ep: 2 + dp-attn: true + additional-settings: + - "CONFIG_FILE=recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml" + decode: + num-worker: 2 + tp: 4 + ep: 1 + dp-attn: false + - conc-list: [512] + prefill: + num-worker: 3 + tp: 2 + ep: 2 + dp-attn: true + additional-settings: + - "CONFIG_FILE=recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml" + decode: + num-worker: 2 + tp: 4 + ep: 1 + dp-attn: false + - conc-list: [1024] + prefill: + num-worker: 4 + tp: 2 + ep: 2 + dp-attn: true + additional-settings: + - "CONFIG_FILE=recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml" + decode: + num-worker: 2 + tp: 4 + ep: 1 + dp-attn: false + # MiniMax-M3 NVFP4 disagg sweep on the same B300 topology matrix as the MXFP8 # baseline above. The image includes vLLM PR #46380, so no runtime patch is # needed. diff --git a/perf-changelog.yaml b/perf-changelog.yaml index 005967fc36..0df24385f1 100644 --- a/perf-changelog.yaml +++ b/perf-changelog.yaml @@ -4966,3 +4966,11 @@ - "Run 29651235293 showed the 1M-context corpus working set outgrowing the HBM KV pool past conc 8 (TP8) / conc 64 (DP8): gpu_kv_cache_usage pinned at 1.0 and the radix hit rate collapsed from a ~0.97 theoretical ceiling to 0.04-0.06, so every post-knee turn re-prefilled its full history and throughput fell together with interactivity" - "HiCache spills evicted prefixes to host DRAM and restores them at C2C bandwidth instead of recomputing; sizing follows the qwen3.5-fp8-b300-sglang-agentic-hicache recipe (GLM-5.2 is plain GQA: one host pool per rank, GB-based --hicache-size)" pr-link: https://github.com/SemiAnalysisAI/InferenceX/pull/2280 + +- config-keys: + - minimaxm3-fp4-b200-dynamo-vllm + description: + - "Add MiniMax-M3 NVFP4 B200 Dynamo-vLLM disaggregated benchmarks at 8k/1k." + - "Use configurations from concurrency 1 through 1024 with spread worker placement for CI transport validation." + - "Image: vllm/vllm-openai:cu129-nightly-8e981630c9336233ca9de91452f68918bddbc4e2; Dynamo: 1.3.0.dev20260710." + pr-link: https://github.com/SemiAnalysisAI/InferenceX/pull/2230 diff --git a/runners/launch_b200-dgxc.sh b/runners/launch_b200-dgxc.sh index 58051e6405..23d7a1aa3a 100644 --- a/runners/launch_b200-dgxc.sh +++ b/runners/launch_b200-dgxc.sh @@ -69,9 +69,8 @@ elif [[ $MODEL_PREFIX == "minimaxm3" && $PRECISION == "fp8" ]]; then export MODEL_PATH="/lustre/fsw/gharunners/models/MiniMax-M3-MXFP8" export SRT_SLURM_MODEL_PREFIX="minimax-m3-mxfp8" elif [[ $MODEL_PREFIX == "minimaxm3" && $PRECISION == "fp4" ]]; then - # NVFP4 checkpoint, pre-staged on the b200-dgxc scratch tree. export MODEL_PATH="/scratch/fsw/models/MiniMax-M3-NVFP4" - export SRT_SLURM_MODEL_PREFIX="minimax-m3-nvfp4" + export SRT_SLURM_MODEL_PREFIX="nvidia/MiniMax-M3-NVFP4" else echo "Unsupported model prefix/precision: $MODEL_PREFIX/$PRECISION" echo "Available models under /lustre/fsw/models:" @@ -113,6 +112,13 @@ if [[ "$IS_MULTINODE" == "true" ]]; then git checkout aflowers/vllm-gb200-v0.20.0 mkdir -p recipes/vllm/deepseek-v4 cp -rT "$GITHUB_WORKSPACE/benchmarks/multi_node/srt-slurm-recipes/vllm/deepseek-v4" recipes/vllm/deepseek-v4 + elif [[ $FRAMEWORK == "dynamo-vllm" && $MODEL_PREFIX == "minimaxm3" && $PRECISION == "fp4" ]]; then + git clone https://github.com/NVIDIA/srt-slurm.git "$SRT_REPO_DIR" + cd "$SRT_REPO_DIR" || exit 1 + mkdir -p recipes/vllm/minimax-m3/b200-fp4 + cp -rT \ + "$GITHUB_WORKSPACE/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4" \ + recipes/vllm/minimax-m3/b200-fp4 elif [[ $FRAMEWORK == "dynamo-sglang" && $MODEL_PREFIX == "glm5" && $PRECISION == "fp8" ]]; then git clone https://github.com/NVIDIA/srt-slurm.git "$SRT_REPO_DIR" cd "$SRT_REPO_DIR" || exit 1 From 39266bb803f5a71c8de1d9a3bda677a485111ae2 Mon Sep 17 00:00:00 2001 From: Xin Li Date: Sun, 19 Jul 2026 17:48:37 -0400 Subject: [PATCH 02/11] fix(minimaxm3): reserve nodes for spread workers --- .../vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml | 2 +- .../vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml | 2 +- .../vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml | 2 +- .../vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml index 6abfca3447..11c0b1d978 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml @@ -5,7 +5,7 @@ model: precision: "fp4" resources: gpu_type: "b200" - prefill_nodes: 1 + prefill_nodes: 2 prefill_workers: 2 gpus_per_prefill: 2 decode_nodes: 2 diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml index a0d8ff18c9..dbdf8f1803 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml @@ -5,7 +5,7 @@ model: precision: "fp4" resources: gpu_type: "b200" - prefill_nodes: 1 + prefill_nodes: 3 prefill_workers: 3 gpus_per_prefill: 2 decode_nodes: 2 diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml index eb9705f776..59a4d0eca4 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml @@ -5,7 +5,7 @@ model: precision: "fp4" resources: gpu_type: "b200" - prefill_nodes: 1 + prefill_nodes: 3 prefill_workers: 3 gpus_per_prefill: 2 decode_nodes: 2 diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml index 8f43fdf977..9e18dfedad 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml @@ -5,7 +5,7 @@ model: precision: "fp4" resources: gpu_type: "b200" - prefill_nodes: 2 + prefill_nodes: 4 prefill_workers: 4 gpus_per_prefill: 2 decode_nodes: 2 From c7d8fe24b50168bfe7d37a8bb5b631ca5c4ea6cd Mon Sep 17 00:00:00 2001 From: Xin Li Date: Mon, 20 Jul 2026 19:54:27 -0400 Subject: [PATCH 03/11] feat(minimaxm3): use selective worker placement --- .../minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml | 3 ++- .../minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml | 5 +++-- .../minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml | 5 +++-- .../minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml | 5 +++-- .../minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml | 5 +++-- 5 files changed, 14 insertions(+), 9 deletions(-) diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml index f326344be7..307c1186f5 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml @@ -7,10 +7,11 @@ resources: gpu_type: "b200" prefill_nodes: 1 prefill_workers: 1 + prefill_workers_per_node: 1 gpus_per_prefill: 2 decode_nodes: 2 decode_workers: 2 - spread_workers: true + spread_decode_workers: true gpus_per_decode: 4 gpus_per_node: 8 dynamo: {install: true, version: 1.3.0.dev20260710} diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml index 11c0b1d978..cfd337defc 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml @@ -5,12 +5,13 @@ model: precision: "fp4" resources: gpu_type: "b200" - prefill_nodes: 2 + prefill_nodes: 1 prefill_workers: 2 + prefill_workers_per_node: 2 gpus_per_prefill: 2 decode_nodes: 2 decode_workers: 2 - spread_workers: true + spread_decode_workers: true gpus_per_decode: 4 gpus_per_node: 8 dynamo: {install: true, version: 1.3.0.dev20260710} diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml index dbdf8f1803..51429fe52b 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml @@ -5,12 +5,13 @@ model: precision: "fp4" resources: gpu_type: "b200" - prefill_nodes: 3 + prefill_nodes: 1 prefill_workers: 3 + prefill_workers_per_node: 3 gpus_per_prefill: 2 decode_nodes: 2 decode_workers: 2 - spread_workers: true + spread_decode_workers: true gpus_per_decode: 4 gpus_per_node: 8 dynamo: {install: true, version: 1.3.0.dev20260710} diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml index 59a4d0eca4..e3666df2f9 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml @@ -5,12 +5,13 @@ model: precision: "fp4" resources: gpu_type: "b200" - prefill_nodes: 3 + prefill_nodes: 1 prefill_workers: 3 + prefill_workers_per_node: 3 gpus_per_prefill: 2 decode_nodes: 2 decode_workers: 2 - spread_workers: true + spread_decode_workers: true gpus_per_decode: 4 gpus_per_node: 8 dynamo: {install: true, version: 1.3.0.dev20260710} diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml index 9e18dfedad..8fab07a8bf 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml @@ -5,12 +5,13 @@ model: precision: "fp4" resources: gpu_type: "b200" - prefill_nodes: 4 + prefill_nodes: 1 prefill_workers: 4 + prefill_workers_per_node: 4 gpus_per_prefill: 2 decode_nodes: 2 decode_workers: 2 - spread_workers: true + spread_decode_workers: true gpus_per_decode: 4 gpus_per_node: 8 dynamo: {install: true, version: 1.3.0.dev20260710} From 2d0622f6b9638ba61577d3935a8ddb79fa2829e3 Mon Sep 17 00:00:00 2001 From: Xin Li Date: Wed, 22 Jul 2026 10:22:18 -0400 Subject: [PATCH 04/11] new --- runners/launch_b200-dgxc.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/runners/launch_b200-dgxc.sh b/runners/launch_b200-dgxc.sh index 23d7a1aa3a..36115a9aeb 100644 --- a/runners/launch_b200-dgxc.sh +++ b/runners/launch_b200-dgxc.sh @@ -115,6 +115,7 @@ if [[ "$IS_MULTINODE" == "true" ]]; then elif [[ $FRAMEWORK == "dynamo-vllm" && $MODEL_PREFIX == "minimaxm3" && $PRECISION == "fp4" ]]; then git clone https://github.com/NVIDIA/srt-slurm.git "$SRT_REPO_DIR" cd "$SRT_REPO_DIR" || exit 1 + git checkout srt-slurm-placement mkdir -p recipes/vllm/minimax-m3/b200-fp4 cp -rT \ "$GITHUB_WORKSPACE/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4" \ From 462a7fe61a7a58c13eb5fd3d7e28eea2536f3f7c Mon Sep 17 00:00:00 2001 From: Xin Li Date: Thu, 23 Jul 2026 00:55:35 -0400 Subject: [PATCH 05/11] update ucx configs --- .../vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml | 2 -- .../vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml | 1 - .../vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml | 1 - .../vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml | 1 - .../vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml | 1 - 5 files changed, 6 deletions(-) diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml index 307c1186f5..7fd45e6bed 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml @@ -40,7 +40,6 @@ backend: VLLM_USE_FLASHINFER_MOE_FP4: '1' VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: '0' VLLM_USE_NCCL_SYMM_MEM: '1' - UCX_IB_ROCE_REACHABILITY_MODE: local_subnet VLLM_NIXL_SIDE_CHANNEL_PORT: '5600' VLLM_NIXL_ABORT_REQUEST_TIMEOUT: '300' VLLM_FLOAT32_MATMUL_PRECISION: high @@ -61,7 +60,6 @@ backend: VLLM_USE_FLASHINFER_MOE_FP4: '1' VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: '0' VLLM_USE_NCCL_SYMM_MEM: '1' - UCX_IB_ROCE_REACHABILITY_MODE: local_subnet VLLM_NIXL_SIDE_CHANNEL_PORT: '5600' VLLM_NIXL_ABORT_REQUEST_TIMEOUT: '300' VLLM_MOE_DP_CHUNK_SIZE: '384' diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml index cfd337defc..e8d1bdbf44 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml @@ -40,7 +40,6 @@ backend: VLLM_USE_FLASHINFER_MOE_FP4: '1' VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: '0' VLLM_USE_NCCL_SYMM_MEM: '1' - UCX_IB_ROCE_REACHABILITY_MODE: local_subnet VLLM_NIXL_SIDE_CHANNEL_PORT: '5600' VLLM_NIXL_ABORT_REQUEST_TIMEOUT: '300' VLLM_FLOAT32_MATMUL_PRECISION: high diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml index 51429fe52b..ebbc213cd4 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml @@ -40,7 +40,6 @@ backend: VLLM_USE_FLASHINFER_MOE_FP4: '1' VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: '0' VLLM_USE_NCCL_SYMM_MEM: '1' - UCX_IB_ROCE_REACHABILITY_MODE: local_subnet VLLM_NIXL_SIDE_CHANNEL_PORT: '5600' VLLM_NIXL_ABORT_REQUEST_TIMEOUT: '300' VLLM_FLOAT32_MATMUL_PRECISION: high diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml index e3666df2f9..18e43705db 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml @@ -40,7 +40,6 @@ backend: VLLM_USE_FLASHINFER_MOE_FP4: '1' VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: '0' VLLM_USE_NCCL_SYMM_MEM: '1' - UCX_IB_ROCE_REACHABILITY_MODE: local_subnet VLLM_NIXL_SIDE_CHANNEL_PORT: '5600' VLLM_NIXL_ABORT_REQUEST_TIMEOUT: '300' VLLM_FLOAT32_MATMUL_PRECISION: high diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml index 8fab07a8bf..475f83b32d 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml @@ -40,7 +40,6 @@ backend: VLLM_USE_FLASHINFER_MOE_FP4: '1' VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: '0' VLLM_USE_NCCL_SYMM_MEM: '1' - UCX_IB_ROCE_REACHABILITY_MODE: local_subnet VLLM_NIXL_SIDE_CHANNEL_PORT: '5600' VLLM_NIXL_ABORT_REQUEST_TIMEOUT: '300' VLLM_FLOAT32_MATMUL_PRECISION: high From f97abea75419a2c0a1b59e17093d1a7bb6726955 Mon Sep 17 00:00:00 2001 From: Xin Li Date: Fri, 24 Jul 2026 09:49:36 -0400 Subject: [PATCH 06/11] remove srt-slurm-placement branch checkout; rename spread_decode_workers to spread_workers --- .../vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml | 2 +- .../vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml | 2 +- .../vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml | 2 +- .../vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml | 2 +- .../vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml | 2 +- runners/launch_b200-dgxc.sh | 1 - 6 files changed, 5 insertions(+), 6 deletions(-) diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml index ae7bfc3c1d..1b669f1d14 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml @@ -11,7 +11,7 @@ resources: gpus_per_prefill: 2 decode_nodes: 2 decode_workers: 2 - spread_decode_workers: true + spread_workers: true gpus_per_decode: 4 gpus_per_node: 8 dynamo: {install: true, version: 1.3.0.dev20260710} diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml index 0efa7ab05a..284e08f530 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml @@ -11,7 +11,7 @@ resources: gpus_per_prefill: 2 decode_nodes: 2 decode_workers: 2 - spread_decode_workers: true + spread_workers: true gpus_per_decode: 4 gpus_per_node: 8 dynamo: {install: true, version: 1.3.0.dev20260710} diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml index 999841514c..3e84d517cf 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml @@ -11,7 +11,7 @@ resources: gpus_per_prefill: 2 decode_nodes: 2 decode_workers: 2 - spread_decode_workers: true + spread_workers: true gpus_per_decode: 4 gpus_per_node: 8 dynamo: {install: true, version: 1.3.0.dev20260710} diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml index fc1a4533c2..0664dd300f 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml @@ -11,7 +11,7 @@ resources: gpus_per_prefill: 2 decode_nodes: 2 decode_workers: 2 - spread_decode_workers: true + spread_workers: true gpus_per_decode: 4 gpus_per_node: 8 dynamo: {install: true, version: 1.3.0.dev20260710} diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml index 630ef60eaa..751ab247fd 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml @@ -11,7 +11,7 @@ resources: gpus_per_prefill: 2 decode_nodes: 2 decode_workers: 2 - spread_decode_workers: true + spread_workers: true gpus_per_decode: 4 gpus_per_node: 8 dynamo: {install: true, version: 1.3.0.dev20260710} diff --git a/runners/launch_b200-dgxc.sh b/runners/launch_b200-dgxc.sh index 26b5d67fb4..93ccec8913 100644 --- a/runners/launch_b200-dgxc.sh +++ b/runners/launch_b200-dgxc.sh @@ -115,7 +115,6 @@ if [[ "$IS_MULTINODE" == "true" ]]; then elif [[ $FRAMEWORK == "dynamo-vllm" && $MODEL_PREFIX == "minimaxm3" && $PRECISION == "fp4" ]]; then git clone https://github.com/NVIDIA/srt-slurm.git "$SRT_REPO_DIR" cd "$SRT_REPO_DIR" || exit 1 - git checkout srt-slurm-placement mkdir -p recipes/vllm/minimax-m3/b200-fp4 cp -rT \ "$GITHUB_WORKSPACE/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4" \ From 244fa9a90bb40af1d10566a13b162c96f08aaae7 Mon Sep 17 00:00:00 2001 From: Xin Li Date: Fri, 24 Jul 2026 09:57:27 -0400 Subject: [PATCH 07/11] remove prefill_workers_per_node from minimax-m3 b200-fp4 disagg configs --- .../vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml | 1 - .../vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml | 1 - .../vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml | 1 - .../vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml | 1 - .../vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml | 1 - 5 files changed, 5 deletions(-) diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml index 1b669f1d14..7545f73b29 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/1p2d-dep2-tp4-c64-8k1k.yaml @@ -7,7 +7,6 @@ resources: gpu_type: "b200" prefill_nodes: 1 prefill_workers: 1 - prefill_workers_per_node: 1 gpus_per_prefill: 2 decode_nodes: 2 decode_workers: 2 diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml index 284e08f530..5a0a933172 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml @@ -7,7 +7,6 @@ resources: gpu_type: "b200" prefill_nodes: 1 prefill_workers: 2 - prefill_workers_per_node: 2 gpus_per_prefill: 2 decode_nodes: 2 decode_workers: 2 diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml index 3e84d517cf..85564bb236 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml @@ -7,7 +7,6 @@ resources: gpu_type: "b200" prefill_nodes: 1 prefill_workers: 3 - prefill_workers_per_node: 3 gpus_per_prefill: 2 decode_nodes: 2 decode_workers: 2 diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml index 0664dd300f..7ece5952c0 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml @@ -7,7 +7,6 @@ resources: gpu_type: "b200" prefill_nodes: 1 prefill_workers: 3 - prefill_workers_per_node: 3 gpus_per_prefill: 2 decode_nodes: 2 decode_workers: 2 diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml index 751ab247fd..a922d6c587 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml @@ -7,7 +7,6 @@ resources: gpu_type: "b200" prefill_nodes: 1 prefill_workers: 4 - prefill_workers_per_node: 4 gpus_per_prefill: 2 decode_nodes: 2 decode_workers: 2 From e427fb963fd9e7f4a248f957ad8d61bc9322e7cb Mon Sep 17 00:00:00 2001 From: Xin Li Date: Fri, 24 Jul 2026 10:29:38 -0400 Subject: [PATCH 08/11] fix prefill_nodes to match prefill_workers for spread_workers topology --- .../vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml | 2 +- .../vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml | 2 +- .../vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml | 2 +- .../vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml index 5a0a933172..4614abeae0 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/2p2d-dep2-tp4-c128-8k1k.yaml @@ -5,7 +5,7 @@ model: precision: "fp4" resources: gpu_type: "b200" - prefill_nodes: 1 + prefill_nodes: 2 prefill_workers: 2 gpus_per_prefill: 2 decode_nodes: 2 diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml index 85564bb236..8cfb3eb300 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c256-8k1k.yaml @@ -5,7 +5,7 @@ model: precision: "fp4" resources: gpu_type: "b200" - prefill_nodes: 1 + prefill_nodes: 3 prefill_workers: 3 gpus_per_prefill: 2 decode_nodes: 2 diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml index 7ece5952c0..bf9f0d7e59 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/3p2d-dep2-tp4-c512-8k1k.yaml @@ -5,7 +5,7 @@ model: precision: "fp4" resources: gpu_type: "b200" - prefill_nodes: 1 + prefill_nodes: 3 prefill_workers: 3 gpus_per_prefill: 2 decode_nodes: 2 diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml index a922d6c587..ff366b74eb 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b200-fp4/8k1k/4p2d-dep2-tp4-c1024-8k1k.yaml @@ -5,7 +5,7 @@ model: precision: "fp4" resources: gpu_type: "b200" - prefill_nodes: 1 + prefill_nodes: 4 prefill_workers: 4 gpus_per_prefill: 2 decode_nodes: 2 From 2f2559a483b19c8fb5b21278412ddf8dfeadd611 Mon Sep 17 00:00:00 2001 From: Xin Li Date: Fri, 24 Jul 2026 14:41:31 -0400 Subject: [PATCH 09/11] revert b300-fp4 mtp configs to original (no image/UCX changes needed) --- .../b300-fp4/8k1k/mtp/1p1d-dep2-tp4-eagle3-8k1k.yaml | 6 +++--- .../b300-fp4/8k1k/mtp/1p2d-dep2-tp4-eagle3-8k1k.yaml | 6 +++--- .../b300-fp4/8k1k/mtp/1p4d-dep2-tp4-eagle3-8k1k.yaml | 6 +++--- .../b300-fp4/8k1k/mtp/1p6d-dep2-tp4-eagle3-8k1k.yaml | 6 +++--- .../b300-fp4/8k1k/mtp/2p1d-dep2-dep4-eagle3-8k1k.yaml | 6 +++--- .../b300-fp4/8k1k/mtp/2p3d-dep2-tp4-eagle3-8k1k.yaml | 6 +++--- 6 files changed, 18 insertions(+), 18 deletions(-) diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/1p1d-dep2-tp4-eagle3-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/1p1d-dep2-tp4-eagle3-8k1k.yaml index dcd545353a..0890ace22f 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/1p1d-dep2-tp4-eagle3-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/1p1d-dep2-tp4-eagle3-8k1k.yaml @@ -2,7 +2,7 @@ name: "minimax-m3-vllm-disagg-b300-1p1d-dep2-tp4-fp4-8k1k-eagle3" model: path: "nvidia/MiniMax-M3-NVFP4" - container: "vllm/vllm-openai:nightly-4080263bb2c5d10deac17aaeb88e0823bc35bca9" + container: "vllm/vllm-openai:nightly-8e981630c9336233ca9de91452f68918bddbc4e2" precision: fp4 resources: @@ -32,12 +32,12 @@ backend: prefill_environment: VLLM_FLOAT32_MATMUL_PRECISION: high VLLM_FLASHINFER_ALLREDUCE_BACKEND: trtllm - UCX_TCP_AF_PRIO: "inet" + UCX_TLS: cuda_copy,cuda_ipc,rc decode_environment: VLLM_FLOAT32_MATMUL_PRECISION: high VLLM_FLASHINFER_ALLREDUCE_BACKEND: trtllm - UCX_TCP_AF_PRIO: "inet" + UCX_TLS: cuda_copy,cuda_ipc,rc vllm_config: prefill: diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/1p2d-dep2-tp4-eagle3-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/1p2d-dep2-tp4-eagle3-8k1k.yaml index 734ee42d32..19cdeb0793 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/1p2d-dep2-tp4-eagle3-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/1p2d-dep2-tp4-eagle3-8k1k.yaml @@ -2,7 +2,7 @@ name: "minimax-m3-vllm-disagg-b300-1p2d-dep2-tp4-fp4-8k1k-eagle3" model: path: "nvidia/MiniMax-M3-NVFP4" - container: "vllm/vllm-openai:nightly-4080263bb2c5d10deac17aaeb88e0823bc35bca9" + container: "vllm/vllm-openai:nightly-8e981630c9336233ca9de91452f68918bddbc4e2" precision: fp4 resources: @@ -32,12 +32,12 @@ backend: prefill_environment: VLLM_FLOAT32_MATMUL_PRECISION: high VLLM_FLASHINFER_ALLREDUCE_BACKEND: trtllm - UCX_TCP_AF_PRIO: "inet" + UCX_TLS: cuda_copy,cuda_ipc,rc decode_environment: VLLM_FLOAT32_MATMUL_PRECISION: high VLLM_FLASHINFER_ALLREDUCE_BACKEND: trtllm - UCX_TCP_AF_PRIO: "inet" + UCX_TLS: cuda_copy,cuda_ipc,rc vllm_config: prefill: diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/1p4d-dep2-tp4-eagle3-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/1p4d-dep2-tp4-eagle3-8k1k.yaml index 958686c617..858576055b 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/1p4d-dep2-tp4-eagle3-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/1p4d-dep2-tp4-eagle3-8k1k.yaml @@ -2,7 +2,7 @@ name: "minimax-m3-vllm-disagg-b300-1p4d-dep2-tp4-fp4-8k1k-eagle3" model: path: "nvidia/MiniMax-M3-NVFP4" - container: "vllm/vllm-openai:nightly-4080263bb2c5d10deac17aaeb88e0823bc35bca9" + container: "vllm/vllm-openai:nightly-8e981630c9336233ca9de91452f68918bddbc4e2" precision: fp4 resources: @@ -32,12 +32,12 @@ backend: prefill_environment: VLLM_FLOAT32_MATMUL_PRECISION: high VLLM_FLASHINFER_ALLREDUCE_BACKEND: trtllm - UCX_TCP_AF_PRIO: "inet" + UCX_TLS: cuda_copy,cuda_ipc,rc decode_environment: VLLM_FLOAT32_MATMUL_PRECISION: high VLLM_FLASHINFER_ALLREDUCE_BACKEND: trtllm - UCX_TCP_AF_PRIO: "inet" + UCX_TLS: cuda_copy,cuda_ipc,rc vllm_config: prefill: diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/1p6d-dep2-tp4-eagle3-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/1p6d-dep2-tp4-eagle3-8k1k.yaml index b2f13b532f..b4da6d26e4 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/1p6d-dep2-tp4-eagle3-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/1p6d-dep2-tp4-eagle3-8k1k.yaml @@ -2,7 +2,7 @@ name: "minimax-m3-vllm-disagg-b300-1p6d-dep2-tp4-fp4-8k1k-eagle3" model: path: "nvidia/MiniMax-M3-NVFP4" - container: "vllm/vllm-openai:nightly-4080263bb2c5d10deac17aaeb88e0823bc35bca9" + container: "vllm/vllm-openai:nightly-8e981630c9336233ca9de91452f68918bddbc4e2" precision: fp4 resources: @@ -32,12 +32,12 @@ backend: prefill_environment: VLLM_FLOAT32_MATMUL_PRECISION: high VLLM_FLASHINFER_ALLREDUCE_BACKEND: trtllm - UCX_TCP_AF_PRIO: "inet" + UCX_TLS: cuda_copy,cuda_ipc,rc decode_environment: VLLM_FLOAT32_MATMUL_PRECISION: high VLLM_FLASHINFER_ALLREDUCE_BACKEND: trtllm - UCX_TCP_AF_PRIO: "inet" + UCX_TLS: cuda_copy,cuda_ipc,rc vllm_config: prefill: diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/2p1d-dep2-dep4-eagle3-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/2p1d-dep2-dep4-eagle3-8k1k.yaml index 44c9ab677b..5943109612 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/2p1d-dep2-dep4-eagle3-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/2p1d-dep2-dep4-eagle3-8k1k.yaml @@ -2,7 +2,7 @@ name: "minimax-m3-vllm-disagg-b300-2p1d-dep2-dep4-fp4-8k1k-eagle3" model: path: "nvidia/MiniMax-M3-NVFP4" - container: "vllm/vllm-openai:nightly-4080263bb2c5d10deac17aaeb88e0823bc35bca9" + container: "vllm/vllm-openai:nightly-8e981630c9336233ca9de91452f68918bddbc4e2" precision: fp4 resources: @@ -32,12 +32,12 @@ backend: prefill_environment: VLLM_FLOAT32_MATMUL_PRECISION: high VLLM_FLASHINFER_ALLREDUCE_BACKEND: trtllm - UCX_TCP_AF_PRIO: "inet" + UCX_TLS: cuda_copy,cuda_ipc,rc decode_environment: VLLM_FLOAT32_MATMUL_PRECISION: high VLLM_FLASHINFER_ALLREDUCE_BACKEND: trtllm - UCX_TCP_AF_PRIO: "inet" + UCX_TLS: cuda_copy,cuda_ipc,rc vllm_config: prefill: diff --git a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/2p3d-dep2-tp4-eagle3-8k1k.yaml b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/2p3d-dep2-tp4-eagle3-8k1k.yaml index 1f33f1ba92..73aa7c161c 100644 --- a/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/2p3d-dep2-tp4-eagle3-8k1k.yaml +++ b/benchmarks/multi_node/srt-slurm-recipes/vllm/minimax-m3/b300-fp4/8k1k/mtp/2p3d-dep2-tp4-eagle3-8k1k.yaml @@ -2,7 +2,7 @@ name: "minimax-m3-vllm-disagg-b300-2p3d-dep2-tp4-fp4-8k1k-eagle3" model: path: "nvidia/MiniMax-M3-NVFP4" - container: "vllm/vllm-openai:nightly-4080263bb2c5d10deac17aaeb88e0823bc35bca9" + container: "vllm/vllm-openai:nightly-8e981630c9336233ca9de91452f68918bddbc4e2" precision: fp4 resources: @@ -32,12 +32,12 @@ backend: prefill_environment: VLLM_FLOAT32_MATMUL_PRECISION: high VLLM_FLASHINFER_ALLREDUCE_BACKEND: trtllm - UCX_TCP_AF_PRIO: "inet" + UCX_TLS: cuda_copy,cuda_ipc,rc decode_environment: VLLM_FLOAT32_MATMUL_PRECISION: high VLLM_FLASHINFER_ALLREDUCE_BACKEND: trtllm - UCX_TCP_AF_PRIO: "inet" + UCX_TLS: cuda_copy,cuda_ipc,rc vllm_config: prefill: From 6ebf4aca15d6e5a1240ebb1e90fda8feb88904e9 Mon Sep 17 00:00:00 2001 From: Xin Li Date: Fri, 24 Jul 2026 14:43:32 -0400 Subject: [PATCH 10/11] update minimaxm3-fp4-b200-dynamo-vllm image in nvidia-master.yaml --- configs/nvidia-master.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configs/nvidia-master.yaml b/configs/nvidia-master.yaml index 8777c586ad..8cfc8ad2df 100644 --- a/configs/nvidia-master.yaml +++ b/configs/nvidia-master.yaml @@ -6664,7 +6664,7 @@ qwen3.5-fp8-h100-sglang-agentic: - { tp: 8, ep: 8, kv-offloading: dram, kv-offload-backend: { name: hicache }, conc-list: [12, 14, 16, 20, 24, 28, 32, 42] } minimaxm3-fp4-b200-dynamo-vllm: - image: vllm/vllm-openai:cu129-nightly-8e981630c9336233ca9de91452f68918bddbc4e2 + image: vllm/vllm-openai:nightly-4080263bb2c5d10deac17aaeb88e0823bc35bca9 model: nvidia/MiniMax-M3-NVFP4 model-prefix: minimaxm3 runner: b200-multinode From 3f245da10da506c645fc15a0f57833977da8f62b Mon Sep 17 00:00:00 2001 From: Ankur-singh Date: Sat, 25 Jul 2026 12:38:55 -0700 Subject: [PATCH 11/11] perf-changelog: correct minimaxm3-fp4-b200-dynamo-vllm image string [skip-sweep] The config and all six b200-fp4 recipes pin vllm/vllm-openai:nightly-4080263bb2c5d10deac17aaeb88e0823bc35bca9, but the changelog entry still cited the pre-bump cu129-nightly-8e981630c9 tag. Documentation-only fix; no benchmark or config behavior changes. --- perf-changelog.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/perf-changelog.yaml b/perf-changelog.yaml index e501b2e863..b9890b8410 100644 --- a/perf-changelog.yaml +++ b/perf-changelog.yaml @@ -5055,7 +5055,7 @@ description: - "Add MiniMax-M3 NVFP4 B200 Dynamo-vLLM disaggregated benchmarks at 8k/1k." - "Use configurations from concurrency 1 through 1024 with spread worker placement for CI transport validation." - - "Image: vllm/vllm-openai:cu129-nightly-8e981630c9336233ca9de91452f68918bddbc4e2; Dynamo: 1.3.0.dev20260710." + - "Image: vllm/vllm-openai:nightly-4080263bb2c5d10deac17aaeb88e0823bc35bca9; Dynamo: 1.3.0.dev20260710." pr-link: https://github.com/SemiAnalysisAI/InferenceX/pull/2230 - config-keys: