[CI][PD] Add optional/nightly DSv4 Disaggregated eval (#42310)

Signed-off-by: NickLucche <nicolo.lucchesi@mistral.ai>
This commit is contained in:
Nicolò Lucchesi
2026-07-15 21:04:54 +00:00
committed by GitHub
parent ecf4aa5ce2
commit 3034c8d389
3 changed files with 31 additions and 5 deletions
+22
View File
@@ -203,3 +203,25 @@ steps:
commands:
- bash /vllm-workspace/.buildkite/scripts/install-kv-connectors.sh
- bash v1/kv_connector/nixl_integration/run_multi_connector_edge_case_test.sh
# P TP 4 - D DPEP 4 test case for DSv4-Flash
- label: DSv4-Flash Disaggregated DP EP
key: dsv4-flash-disaggregated
timeout_in_minutes: 60
device: h200
optional: true
working_dir: "/vllm-workspace/tests"
num_devices: 8
env:
ENABLE_HMA_FLAG: "1"
DP_EP: "1"
GPU_MEMORY_UTILIZATION: "0.85"
PREFILLER_TP_SIZE: "4"
DECODER_TP_SIZE: "4"
PREFILL_BLOCK_SIZE: "256"
DECODE_BLOCK_SIZE: "256"
MODEL_NAMES: "deepseek-ai/DeepSeek-V4-Flash"
VLLM_SERVE_EXTRA_ARGS: "--trust-remote-code,--kv-cache-dtype,fp8"
commands:
- bash /vllm-workspace/.buildkite/scripts/install-kv-connectors.sh
- bash v1/kv_connector/nixl_integration/run_accuracy_test.sh
@@ -140,12 +140,13 @@ run_tests_for_model() {
# Start prefill instances
for i in $(seq 0 $((NUM_PREFILL_INSTANCES-1))); do
# Calculate GPU ID - we'll distribute across available GPUs
GPU_ID=$((i % $(get_num_gpus)))
NEXT_GPU=${GPU_ID}
GPU_START=$((i % $(get_num_gpus)))
GPU_ID=$GPU_START
NEXT_GPU=$GPU_START
# Reserve TP*PP GPUs for the prefiller (TP shards across PP stages).
PREFILLER_WORLD_SIZE=$((PREFILLER_TP_SIZE * PREFILLER_PP_SIZE))
for (( j=1; j < PREFILLER_WORLD_SIZE; j++ )); do
NEXT_GPU=$(((GPU_ID + j) % $(get_num_gpus)))
NEXT_GPU=$(((GPU_START + j) % $(get_num_gpus)))
GPU_ID="${GPU_ID},${NEXT_GPU}"
done
@@ -195,10 +196,12 @@ run_tests_for_model() {
# Start decode instances
for i in $(seq 0 $((NUM_DECODE_INSTANCES-1))); do
# Calculate GPU ID - we'll distribute across available GPUs, starting from after prefill GPUs
GPU_ID=$(((i + NEXT_GPU + 1) % $(get_num_gpus)))
DECODE_START=$(((i + NEXT_GPU + 1) % $(get_num_gpus)))
GPU_ID=$DECODE_START
NEXT_GPU=$DECODE_START
# If DECODER_TP_SIZE is more than 1
for (( j=1; j < DECODER_TP_SIZE; j++ )); do
NEXT_GPU=$(((GPU_ID + j) % $(get_num_gpus)))
NEXT_GPU=$(((DECODE_START + j) % $(get_num_gpus)))
GPU_ID="${GPU_ID},${NEXT_GPU}"
done
# Calculate port number (base port + instance number)
@@ -26,6 +26,7 @@ EXPECTED_VALUES = {
"Qwen/Qwen3.5-0.8B": 0.33,
"google/gemma-4-E2B-it": 0.485,
"ai21labs/AI21-Jamba2-3B": 0.74,
"deepseek-ai/DeepSeek-V4-Flash": 0.95,
}
SIMPLE_PROMPT = (