@tduncan / Nvidia-Optimization-Stack-VLLM Mirror · read-only / commits / f2b8e1c551
Fork 0

A high-throughput and memory-efficient inference and serving engine for LLMs

Mirrored from https://github.com/tduncan-lum/Nvidia-Optimization-Stack---VLLM.git

Synced Nov 13, 07:00 UTC

Mirrored test group definitions for AMD (2025-11-11) (#28573)

Signed-off-by: Alexei V. Ivanov <alexei.ivanov@amd.com>

Alexei-V-Ivanov-AMD committed Nov 13, 2025 at 18:16 UTC f2b8e1c5510cf3621dc4b910f0eba5289d9fee88
1 file changed +153 -10
.buildkite/test-amd.yaml
+153 -10
@@ -226,6 +226,27 @@ steps:
226 - VLLM_ALLOW_INSECURE_SERIALIZATION=1 RAY_DEDUP_LOGS=0 python3 rlhf_colocate.py
227 - popd
228
229 +- label: Distributed Tests (8 GPUs) # 4min
230 + timeout_in_minutes: 10
231 + mirror_hardwares: [amdexperimental]
232 + agent_pool: mi325_8
233 + # grade: Blocking
234 + gpu: h100
235 + num_gpus: 8
236 + working_dir: "/vllm-workspace/tests"
237 + source_file_dependencies:
238 + - examples/offline_inference/torchrun_dp_example.py
239 + - vllm/config/parallel.py
240 + - vllm/distributed/
241 + - vllm/v1/engine/llm_engine.py
242 + - vllm/v1/executor/uniproc_executor.py
243 + - vllm/v1/worker/gpu_worker.py
244 + commands:
245 + # https://github.com/NVIDIA/nccl/issues/1838
246 + #- export NCCL_CUMEM_HOST_ENABLE=0
247 + # test with torchrun tp=2 and dp=4 with ep
248 + - torchrun --nproc-per-node=8 ../examples/offline_inference/torchrun_dp_example.py --tp-size=2 --pp-size=1 --dp-size=4 --enable-ep
249 +
250 - label: EPLB Algorithm Test # 5min
251 mirror_hardwares: [amdexperimental, amdproduction]
252 agent_pool: mi325_1
@@ -238,11 +259,11 @@ steps:
259 commands:
260 - pytest -v -s distributed/test_eplb_algo.py
261
241 -- label: EPLB Execution Test # 5min
262 +- label: EPLB Execution Test # 10min
263 mirror_hardwares: [amdexperimental, amdproduction]
264 agent_pool: mi325_4
265 # grade: Blocking
245 - timeout_in_minutes: 15
266 + timeout_in_minutes: 20
267 working_dir: "/vllm-workspace/tests"
268 num_gpus: 4
269 source_file_dependencies:
@@ -250,6 +271,7 @@ steps:
271 - tests/distributed/test_eplb_execute.py
272 commands:
273 - pytest -v -s distributed/test_eplb_execute.py
274 + - pytest -v -s distributed/test_eplb_spec_decode.py
275
276 - label: Metrics, Tracing Test # 12min
277 timeout_in_minutes: 20
@@ -273,7 +295,7 @@ steps:
295
296 - label: Regression Test # 7min
297 timeout_in_minutes: 20
276 - mirror_hardwares: [amdexperimental, amdproduction]
298 + mirror_hardwares: [amdexperimental, amdproduction, amdtentative]
299 agent_pool: mi325_1
300 grade: Blocking
301 source_file_dependencies:
@@ -288,7 +310,7 @@ steps:
310 timeout_in_minutes: 40
311 mirror_hardwares: [amdexperimental, amdproduction]
312 agent_pool: mi325_1
291 - #grade: Blocking
313 + # grade: Blocking
314 source_file_dependencies:
315 - vllm/
316 - tests/engine
@@ -337,6 +359,7 @@ steps:
359 - tests/v1
360 commands:
361 # split the test to avoid interference
362 + - uv pip install --system -r /vllm-workspace/requirements/kv_connectors.txt
363 - pytest -v -s -m 'not cpu_test' v1/core
364 - pytest -v -s v1/executor
365 - pytest -v -s v1/kv_offload
@@ -344,7 +367,7 @@ steps:
367 - pytest -v -s v1/logits_processors
368 - pytest -v -s v1/worker
369 - pytest -v -s v1/spec_decode
347 - - pytest -v -s -m 'not cpu_test' v1/kv_connector/unit --ignore=v1/kv_connector/unit/test_lmcache_integration.py
370 + - pytest -v -s -m 'not cpu_test' v1/kv_connector/unit
371 - pytest -v -s -m 'not cpu_test' v1/metrics
372 - pytest -v -s v1/test_oracle.py
373 - pytest -v -s v1/test_request.py
@@ -353,6 +376,20 @@ steps:
376 - pip install -U git+https://github.com/robertgshaw2-redhat/lm-evaluation-harness.git@streaming-api
377 - pytest -v -s entrypoints/openai/correctness/test_lmeval.py::test_lm_eval_accuracy_v1_engine
378
379 +# TODO: Add the "V1 Test attetion (MI300)" test group
380 +
381 +- label: V1 Test attention (H100) # 10min
382 + mirror_hardwares: [amdexperimental]
383 + agent_pool: mi325_1
384 + # grade: Blocking
385 + timeout_in_minutes: 30
386 + gpu: h100
387 + source_file_dependencies:
388 + - vllm/v1/attention
389 + - tests/v1/attention
390 + commands:
391 + - pytest -v -s v1/attention
392 +
393 - label: V1 Test others (CPU) # 5 mins
394 mirror_hardwares: [amdexperimental, amdproduction]
395 agent_pool: mi325_1
@@ -479,10 +516,11 @@ steps:
516 - tests/compile
517 commands:
518 - pytest -v -s compile/test_basic_correctness.py
519 + - pytest -v -s compile/test_multimodal_compile.py
520 - pytest -v -s compile/piecewise/
521
484 -- label: PyTorch Fullgraph Test # 22min
485 - timeout_in_minutes: 35
522 +- label: PyTorch Fullgraph Test # 27min
523 + timeout_in_minutes: 40
524 mirror_hardwares: [amdexperimental, amdproduction]
525 agent_pool: mi325_1
526 # grade: Blocking
@@ -491,8 +529,23 @@ steps:
529 - vllm/
530 - tests/compile
531 commands:
494 - - pytest -v -s compile/test_full_graph.py
495 - - pytest -v -s compile/test_fusions_e2e.py
532 + - pytest -v -s compile/test_full_graph.py -k 'not test_fp8_kv_scale_compile'
533 + # Limit to no custom ops to reduce running time
534 + # Wrap with quotes to escape yaml and avoid starting -k string with a -
535 + - "pytest -v -s compile/test_fusions_e2e.py -k 'TRITON and -quant_fp8'"
536 +
537 +- label: Cudagraph test
538 + timeout_in_minutes: 20
539 + mirror_hardwares: [amdexperimental, amdproduction]
540 + agent_pool: mi325_1
541 + source_file_dependencies:
542 + - tests/v1/cudagraph
543 + - vllm/v1/cudagraph_dispatcher.py
544 + - vllm/config/compilation.py
545 + - vllm/compilation
546 + commands:
547 + - pytest -v -s v1/cudagraph/test_cudagraph_dispatch.py
548 + - pytest -v -s v1/cudagraph/test_cudagraph_mode.py
549
550 - label: Kernels Core Operation Test # 48min
551 timeout_in_minutes: 75
@@ -544,6 +597,8 @@ steps:
597 - tests/kernels/moe
598 - vllm/model_executor/layers/fused_moe/
599 - vllm/distributed/device_communicators/
600 + - vllm/envs.py
601 + - vllm/config
602 commands:
603 - pytest -v -s kernels/moe --shard-id=$$BUILDKITE_PARALLEL_JOB --num-shards=$$BUILDKITE_PARALLEL_JOB_COUNT
604 parallelism: 2
@@ -562,10 +617,13 @@ steps:
617
618 - label: Model Executor Test # 23min
619 timeout_in_minutes: 35
620 + torch_nightly: true
621 mirror_hardwares: [amdexperimental, amdproduction]
622 agent_pool: mi325_1
623 # grade: Blocking
624 source_file_dependencies:
625 + - vllm/engine/arg_utils.py
626 + - vllm/config/model.py
627 - vllm/model_executor
628 - tests/model_executor
629 - tests/entrypoints/openai/test_tensorizer_entrypoint.py
@@ -861,9 +919,10 @@ steps:
919 - cd .. && VLLM_WORKER_MULTIPROC_METHOD=spawn pytest -v -s tests/models/multimodal/generation/test_whisper.py -m core_model # Otherwise, mp_method="spawn" doesn't work
920
921 - label: Multi-Modal Accuracy Eval (Small Models) # 10min
922 + timeout_in_minutes: 70
923 mirror_hardwares: [amdexperimental, amdproduction]
924 agent_pool: mi325_1
866 - timeout_in_minutes: 15
925 + # grade: Blocking
926 working_dir: "/vllm-workspace/.buildkite/lm-eval-harness"
927 source_file_dependencies:
928 - vllm/multimodal/
@@ -934,6 +993,7 @@ steps:
993 - label: Transformers Nightly Models Test
994 mirror_hardwares: [amdexperimental]
995 agent_pool: mi325_1
996 + # grade: Blocking
997 working_dir: "/vllm-workspace/"
998 optional: true
999 commands:
@@ -961,11 +1021,16 @@ steps:
1021 - vllm/model_executor/layers/fused_moe/flashinfer_cutlass_prepare_finalize.py
1022 - vllm/model_executor/layers/quantization/utils/flashinfer_utils.py
1023 - vllm/v1/attention/backends/flashinfer.py
1024 + - vllm/v1/attention/backends/mla/cutlass_mla.py
1025 + - vllm/v1/attention/backends/mla/flashinfer_mla.py
1026 + - vllm/platforms/cuda.py
1027 + - vllm/attention/selector.py
1028 commands:
1029 - nvidia-smi
1030 - python3 examples/offline_inference/basic/chat.py
1031 # Attention
1032 # num_heads2 broken by https://github.com/flashinfer-ai/flashinfer/issues/1353
1033 + - pytest -v -s tests/kernels/attention/test_attention_selector.py
1034 - pytest -v -s tests/kernels/attention/test_flashinfer.py -k 'not num_heads2'
1035 - pytest -v -s tests/kernels/attention/test_flashinfer_trtllm_attention.py
1036 - pytest -v -s tests/kernels/attention/test_cutlass_mla_decode.py
@@ -1002,7 +1067,33 @@ steps:
1067 - pytest -v -s tests/compile/test_silu_mul_quant_fusion.py
1068 # this runner has 2 GPUs available even though num_gpus=2 is not set
1069 - pytest -v -s tests/compile/test_fusion_all_reduce.py
1070 + # Limit to Inductor partition, no custom ops, and allreduce & attn fusion to reduce running time
1071 + # Wrap with quotes to escape yaml
1072 + - "pytest -v -s tests/compile/test_fusions_e2e.py::test_tp2_attn_quant_allreduce_rmsnorm -k 'True and Llama-3.1 and -quant_fp8 and -rms_norm'"
1073 +
1074 +- label: Blackwell Fusion E2E Tests # 30 min
1075 + timeout_in_minutes: 40
1076 + working_dir: "/vllm-workspace/"
1077 + gpu: b200
1078 + optional: true
1079 + num_gpus: 2
1080 + source_file_dependencies:
1081 + - csrc/quantization/fp4/
1082 + - vllm/model_executor/layers/quantization/utils/flashinfer_utils.py
1083 + - vllm/v1/attention/backends/flashinfer.py
1084 + - vllm/compilation/
1085 + # can affect pattern matching
1086 + - vllm/model_executor/layers/layernorm.py
1087 + - vllm/model_executor/layers/activation.py
1088 + - vllm/model_executor/layers/quantization/input_quant_fp8.py
1089 + - tests/compile/test_fusions_e2e.py
1090 + - tests/compile/test_full_graph.py
1091 + commands:
1092 + - nvidia-smi
1093 + # Run all e2e fusion tests
1094 - pytest -v -s tests/compile/test_fusions_e2e.py
1095 + # test_fp8_kv_scale_compile requires FlashAttention (not supported on default L4/L40)
1096 + - pytest -v -s tests/compile/test_full_graph.py::test_fp8_kv_scale_compile
1097
1098 - label: Blackwell GPT-OSS Eval
1099 timeout_in_minutes: 60
@@ -1253,6 +1344,7 @@ steps:
1344 - label: NixlConnector PD accuracy tests (Distributed) # 30min
1345 mirror_hardwares: [amdexperimental]
1346 agent_pool: mi325_4
1347 + # grade: Blocking
1348 timeout_in_minutes: 30
1349 working_dir: "/vllm-workspace/tests"
1350 num_gpus: 4
@@ -1267,6 +1359,9 @@ steps:
1359 ##### A100 test #####
1360
1361 - label: Distributed Tests (A100) # optional
1362 + mirror_hardwares: [amdexperimental]
1363 + agent_pool: mi325_4
1364 + # grade: Blocking
1365 gpu: a100
1366 optional: true
1367 num_gpus: 4
@@ -1281,6 +1376,9 @@ steps:
1376 - pytest -v -s -x lora/test_mixtral.py
1377
1378 - label: LM Eval Large Models # optional
1379 + mirror_hardwares: [amdexperimental, amdproduction]
1380 + agent_pool: mi325_4
1381 + # grade: Blocking
1382 gpu: a100
1383 optional: true
1384 num_gpus: 4
@@ -1292,8 +1390,27 @@ steps:
1390 - export VLLM_WORKER_MULTIPROC_METHOD=spawn
1391 - pytest -s -v test_lm_eval_correctness.py --config-list-file=configs/models-large.txt --tp-size=4
1392
1393 +##### H100 test #####
1394 +- label: LM Eval Large Models (H100) # optional
1395 + mirror_hardwares: [amdexperimental, amdproduction]
1396 + agent_pool: mi325_4
1397 + # grade: Blocking
1398 + gpu: h100
1399 + optional: true
1400 + num_gpus: 4
1401 + working_dir: "/vllm-workspace/.buildkite/lm-eval-harness"
1402 + source_file_dependencies:
1403 + - csrc/
1404 + - vllm/model_executor/layers/quantization
1405 + commands:
1406 + - export VLLM_USE_DEEP_GEMM=0 # We found Triton is faster than DeepGEMM for H100
1407 + - pytest -s -v test_lm_eval_correctness.py --config-list-file=configs/models-large-hopper.txt --tp-size=4
1408 +
1409 ##### H200 test #####
1410 - label: Distributed Tests (H200) # optional
1411 + mirror_hardwares: [amdexperimental]
1412 + agent_pool: mi325_2
1413 + # grade: Blocking
1414 gpu: h200
1415 optional: true
1416 working_dir: "/vllm-workspace/"
@@ -1305,6 +1422,7 @@ steps:
1422 - pytest -v -s tests/compile/test_fusions_e2e.py::test_tp2_attn_quant_allreduce_rmsnorm
1423 - pytest -v -s tests/distributed/test_context_parallel.py
1424 - CUDA_VISIBLE_DEVICES=1,2 VLLM_ALL2ALL_BACKEND=deepep_high_throughput VLLM_USE_DEEP_GEMM=1 VLLM_LOGGING_LEVEL=DEBUG python3 examples/offline_inference/data_parallel.py --model Qwen/Qwen1.5-MoE-A2.7B --tp-size=1 --dp-size=2 --max-model-len 2048
1425 + - pytest -v -s tests/v1/distributed/test_dbo.py
1426
1427 ##### B200 test #####
1428 - label: Distributed Tests (B200) # optional
@@ -1315,6 +1433,7 @@ steps:
1433 commands:
1434 - pytest -v -s tests/distributed/test_context_parallel.py
1435 - pytest -v -s tests/distributed/test_nccl_symm_mem_allreduce.py
1436 + - pytest -v -s tests/v1/distributed/test_dbo.py
1437
1438 ##### RL Integration Tests #####
1439 - label: Prime-RL Integration Test # 15min
@@ -1330,3 +1449,27 @@ steps:
1449 - .buildkite/scripts/run-prime-rl-test.sh
1450 commands:
1451 - bash .buildkite/scripts/run-prime-rl-test.sh
1452 +
1453 +- label: DeepSeek V2-Lite Accuracy
1454 + mirror_hardwares: [amdexperimental]
1455 + agent_pool: mi325_4
1456 + # grade: Blocking
1457 + timeout_in_minutes: 60
1458 + gpu: h100
1459 + optional: true
1460 + num_gpus: 4
1461 + working_dir: "/vllm-workspace"
1462 + commands:
1463 + - bash .buildkite/scripts/scheduled_integration_test/deepseek_v2_lite_ep_eplb.sh 0.25 200 8010
1464 +
1465 +- label: Qwen3-30B-A3B-FP8-block Accuracy
1466 + mirror_hardwares: [amdexperimental]
1467 + agent_pool: mi325_4
1468 + # grade: Blocking
1469 + timeout_in_minutes: 60
1470 + gpu: h100
1471 + optional: true
1472 + num_gpus: 4
1473 + working_dir: "/vllm-workspace"
1474 + commands:
1475 + - bash .buildkite/scripts/scheduled_integration_test/qwen30b_a3b_fp8_block_ep.sh 0.8 200 8020