[CI]: Auto-update estimated test times in config.yaml (#7413)
## Summary
This PR was auto-generated by the **Update estimated test times**
[workflow](https://github.com/vllm-project/vllm-ascend/actions/runs/23226502411).
It updates the `estimated_time` values in
`.github/workflows/scripts/config.yaml` based on actual elapsed times
collected from CI workflow runs.
### Methodology
- Each e2e test job uploads its elapsed time as a `timing-data-*`
artifact upon completion.
- The workflow aggregates all collected timing artifacts across jobs.
- For each test, the **median** elapsed time is computed to reduce
outlier impact.
- A **10% safety buffer** is applied and the result is rounded to the
nearest 10 seconds.
### Review Checklist
- [ ] Verify that updated `estimated_time` values are within a
reasonable range.
- [ ] Confirm no test entries are missing or unexpectedly removed.
> If the new values look reasonable, feel free to merge. Otherwise,
leave a comment describing the anomaly.
- vLLM version: v0.17.0
- vLLM main:
4497431df6
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
This commit is contained in:
319
.github/workflows/scripts/config.yaml
vendored
319
.github/workflows/scripts/config.yaml
vendored
@@ -1,170 +1,163 @@
|
|||||||
e2e-singlecard:
|
e2e-singlecard:
|
||||||
- name: tests/e2e/singlecard/compile/test_graphex_norm_quant_fusion.py
|
- name: tests/e2e/singlecard/compile/test_graphex_norm_quant_fusion.py
|
||||||
estimated_time: 80
|
estimated_time: 83
|
||||||
- name: tests/e2e/singlecard/compile/test_graphex_qknorm_rope_fusion.py
|
- name: tests/e2e/singlecard/compile/test_graphex_qknorm_rope_fusion.py
|
||||||
estimated_time: 80
|
estimated_time: 69
|
||||||
- name: tests/e2e/singlecard/test_auto_fit_max_mode_len.py
|
- name: tests/e2e/singlecard/test_auto_fit_max_mode_len.py
|
||||||
estimated_time: 25
|
|
||||||
- name: tests/e2e/singlecard/test_aclgraph_accuracy.py
|
|
||||||
estimated_time: 480
|
|
||||||
- name: tests/e2e/singlecard/test_aclgraph_batch_invariant.py
|
|
||||||
estimated_time: 410
|
|
||||||
- name: tests/e2e/singlecard/test_aclgraph_mem.py
|
|
||||||
estimated_time: 130
|
|
||||||
- name: tests/e2e/singlecard/test_async_scheduling.py
|
|
||||||
estimated_time: 150
|
|
||||||
- name: tests/e2e/singlecard/test_batch_invariant.py
|
|
||||||
estimated_time: 320
|
|
||||||
- name: tests/e2e/singlecard/test_camem.py
|
|
||||||
estimated_time: 77
|
|
||||||
- name: tests/e2e/singlecard/test_completion_with_prompt_embeds.py
|
|
||||||
estimated_time: 76
|
|
||||||
- name: tests/e2e/singlecard/test_cpu_offloading.py
|
|
||||||
estimated_time: 132
|
|
||||||
- name: tests/e2e/singlecard/test_guided_decoding.py
|
|
||||||
estimated_time: 354
|
|
||||||
- name: tests/e2e/singlecard/test_ilama_lora.py
|
|
||||||
estimated_time: 95
|
|
||||||
- name: tests/e2e/singlecard/test_llama32_lora.py
|
|
||||||
estimated_time: 162
|
|
||||||
- name: tests/e2e/singlecard/test_qwen3_multi_loras.py
|
|
||||||
estimated_time: 65
|
|
||||||
- name: tests/e2e/singlecard/test_models.py
|
|
||||||
estimated_time: 300
|
|
||||||
- name: tests/e2e/singlecard/test_multistream_overlap_shared_expert.py
|
|
||||||
estimated_time: 200
|
|
||||||
- name: tests/e2e/singlecard/test_quantization.py
|
|
||||||
estimated_time: 200
|
|
||||||
- name: tests/e2e/singlecard/test_sampler.py
|
|
||||||
estimated_time: 200
|
|
||||||
- name: tests/e2e/singlecard/test_vlm.py
|
|
||||||
estimated_time: 354
|
|
||||||
- name: tests/e2e/singlecard/test_xlite.py
|
|
||||||
estimated_time: 45
|
|
||||||
- name: tests/e2e/singlecard/compile/test_norm_quant_fusion.py
|
|
||||||
estimated_time: 70
|
estimated_time: 70
|
||||||
- name: tests/e2e/singlecard/pooling/test_classification.py
|
- name: tests/e2e/singlecard/test_aclgraph_accuracy.py
|
||||||
estimated_time: 120
|
estimated_time: 839
|
||||||
- name: tests/e2e/singlecard/pooling/test_embedding.py
|
- name: tests/e2e/singlecard/test_aclgraph_batch_invariant.py
|
||||||
estimated_time: 270
|
estimated_time: 515
|
||||||
- name: tests/e2e/singlecard/pooling/test_scoring.py
|
- name: tests/e2e/singlecard/test_aclgraph_mem.py
|
||||||
estimated_time: 500
|
estimated_time: 187
|
||||||
- name: tests/e2e/singlecard/pooling/test_qwen3_reranker_lora.py
|
- name: tests/e2e/singlecard/test_async_scheduling.py
|
||||||
estimated_time: 235
|
estimated_time: 252
|
||||||
- name: tests/e2e/singlecard/spec_decode/test_mtp_eagle_correctness.py
|
- name: tests/e2e/singlecard/test_batch_invariant.py
|
||||||
estimated_time: 1500
|
estimated_time: 506
|
||||||
- name: tests/e2e/singlecard/spec_decode/test_v1_spec_decode.py
|
- name: tests/e2e/singlecard/test_camem.py
|
||||||
estimated_time: 600
|
estimated_time: 149
|
||||||
- name: tests/e2e/singlecard/model_runner_v2/test_basic.py
|
- name: tests/e2e/singlecard/test_completion_with_prompt_embeds.py
|
||||||
estimated_time: 80
|
estimated_time: 136
|
||||||
is_skipped: true
|
- name: tests/e2e/singlecard/test_cpu_offloading.py
|
||||||
|
estimated_time: 166
|
||||||
e2e-singlecard-light:
|
- name: tests/e2e/singlecard/test_guided_decoding.py
|
||||||
- name: tests/e2e/singlecard/test_aclgraph_accuracy.py::test_piecewise_res_consistency
|
estimated_time: 407
|
||||||
estimated_time: 220
|
- name: tests/e2e/singlecard/test_ilama_lora.py
|
||||||
- name: tests/e2e/singlecard/test_quantization.py::test_qwen3_w8a8_quant
|
estimated_time: 112
|
||||||
estimated_time: 90
|
- name: tests/e2e/singlecard/test_llama32_lora.py
|
||||||
|
estimated_time: 239
|
||||||
e2e-2card-light:
|
- name: tests/e2e/singlecard/test_qwen3_multi_loras.py
|
||||||
- name: tests/e2e/multicard/2-cards/test_qwen3_moe.py::test_qwen3_moe_distributed_mp_tp2_ep
|
|
||||||
estimated_time: 220
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_deepseek3_2_w8a8_pruning_mtp_tp2_ep
|
|
||||||
estimated_time: 90
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_deepseek3_2_w8a8c8_pruning_mtp_tp2_ep
|
|
||||||
estimated_time: 90
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_gpt_oss_distributed_tp2
|
|
||||||
estimated_time: 180
|
|
||||||
|
|
||||||
e2e-multicard-2-cards:
|
|
||||||
# TODO: recover skipped tests
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_aclgraph_capture_replay.py
|
|
||||||
estimated_time: 0
|
|
||||||
is_skipped: true
|
|
||||||
- name: tests/e2e/multicard/2-cards/spec_decode/test_spec_decode.py
|
|
||||||
estimated_time: 0
|
|
||||||
is_skipped: true
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_offline_weight_load.py
|
|
||||||
estimated_time: 0
|
|
||||||
is_skipped: true
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_shared_expert_dp.py
|
|
||||||
estimated_time: 0
|
|
||||||
is_skipped: true
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_qwen3_performance.py
|
|
||||||
estimated_time: 180
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_data_parallel.py
|
|
||||||
estimated_time: 380
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_expert_parallel.py
|
|
||||||
estimated_time: 170
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_external_launcher.py
|
|
||||||
estimated_time: 300
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_full_graph_mode.py
|
|
||||||
estimated_time: 400
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_ilama_lora_tp2.py
|
|
||||||
estimated_time: 60
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_llama32_lora_tp2.py
|
|
||||||
estimated_time: 223
|
|
||||||
- name: tests/e2e/multicard/2-cards/spec_decode/test_quarot_eagle.py
|
|
||||||
estimated_time: 600
|
|
||||||
# Run the test in a separate step to avoid oom
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_deepseek_multistream_moe_tp2
|
|
||||||
estimated_time: 100
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_qwen3_w4a8_dynamic_tp2
|
|
||||||
estimated_time: 80
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_qwen3_moe_sp_tp2
|
|
||||||
estimated_time: 132
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_deepseek_w4a8_accuracy_tp2
|
|
||||||
estimated_time: 132
|
|
||||||
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_qwen3_moe_fc2_tp2
|
|
||||||
estimated_time: 140
|
estimated_time: 140
|
||||||
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_deepseek_v2_lite_fc1_tp2
|
- name: tests/e2e/singlecard/test_models.py
|
||||||
estimated_time: 82
|
estimated_time: 320
|
||||||
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_qwen3_dense_fc1_tp2
|
- name: tests/e2e/singlecard/test_multistream_overlap_shared_expert.py
|
||||||
estimated_time: 73
|
estimated_time: 292
|
||||||
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_qwen3_dense_prefetch_mlp_weight_tp2
|
- name: tests/e2e/singlecard/test_quantization.py
|
||||||
estimated_time: 71
|
estimated_time: 284
|
||||||
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_deepseek3_2_w8a8_pruning_mtp_tp2_ep
|
- name: tests/e2e/singlecard/test_sampler.py
|
||||||
estimated_time: 111
|
estimated_time: 258
|
||||||
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_deepseek3_2_w8a8c8_pruning_mtp_tp2_ep
|
- name: tests/e2e/singlecard/test_vlm.py
|
||||||
estimated_time: 111
|
estimated_time: 495
|
||||||
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_qwen3_w4a4_distributed_tp2
|
- name: tests/e2e/singlecard/test_xlite.py
|
||||||
estimated_time: 180
|
estimated_time: 135
|
||||||
- name: tests/e2e/multicard/2-cards/test_pipeline_parallel.py
|
- name: tests/e2e/singlecard/compile/test_norm_quant_fusion.py
|
||||||
estimated_time: 270
|
estimated_time: 106
|
||||||
- name: tests/e2e/multicard/2-cards/test_prefix_caching.py
|
- name: tests/e2e/singlecard/pooling/test_classification.py
|
||||||
estimated_time: 430
|
estimated_time: 148
|
||||||
- name: tests/e2e/multicard/2-cards/test_quantization.py
|
- name: tests/e2e/singlecard/pooling/test_embedding.py
|
||||||
estimated_time: 70
|
estimated_time: 324
|
||||||
- name: tests/e2e/multicard/2-cards/test_qwen3_moe.py
|
- name: tests/e2e/singlecard/pooling/test_scoring.py
|
||||||
estimated_time: 1050
|
estimated_time: 553
|
||||||
- name: tests/e2e/multicard/2-cards/test_qwen3_moe_routing_replay.py
|
- name: tests/e2e/singlecard/pooling/test_qwen3_reranker_lora.py
|
||||||
estimated_time: 1050
|
estimated_time: 280
|
||||||
- name: tests/e2e/multicard/2-cards/test_single_request_aclgraph.py
|
- name: tests/e2e/singlecard/spec_decode/test_mtp_eagle_correctness.py
|
||||||
estimated_time: 215
|
estimated_time: 6141
|
||||||
- name: tests/e2e/multicard/2-cards/test_disaggregated_encoder.py
|
- name: tests/e2e/singlecard/spec_decode/test_v1_spec_decode.py
|
||||||
|
estimated_time: 600
|
||||||
|
- name: tests/e2e/singlecard/model_runner_v2/test_basic.py
|
||||||
|
estimated_time: 80
|
||||||
|
is_skipped: true
|
||||||
|
e2e-singlecard-light:
|
||||||
|
- name: tests/e2e/singlecard/test_aclgraph_accuracy.py::test_piecewise_res_consistency
|
||||||
|
estimated_time: 229
|
||||||
|
- name: tests/e2e/singlecard/test_quantization.py::test_qwen3_w8a8_quant
|
||||||
|
estimated_time: 183
|
||||||
|
e2e-2card-light:
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_qwen3_moe.py::test_qwen3_moe_distributed_mp_tp2_ep
|
||||||
|
estimated_time: 164
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_deepseek3_2_w8a8_pruning_mtp_tp2_ep
|
||||||
estimated_time: 90
|
estimated_time: 90
|
||||||
- name: tests/e2e/multicard/2-cards/test_sp_pass.py
|
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_deepseek3_2_w8a8c8_pruning_mtp_tp2_ep
|
||||||
estimated_time: 300
|
estimated_time: 180
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_gpt_oss_distributed_tp2
|
||||||
|
estimated_time: 352
|
||||||
|
e2e-multicard-2-cards:
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_aclgraph_capture_replay.py
|
||||||
|
estimated_time: 0
|
||||||
|
is_skipped: true
|
||||||
|
- name: tests/e2e/multicard/2-cards/spec_decode/test_spec_decode.py
|
||||||
|
estimated_time: 0
|
||||||
|
is_skipped: true
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_offline_weight_load.py
|
||||||
|
estimated_time: 0
|
||||||
|
is_skipped: true
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_shared_expert_dp.py
|
||||||
|
estimated_time: 0
|
||||||
|
is_skipped: true
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_qwen3_performance.py
|
||||||
|
estimated_time: 194
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_data_parallel.py
|
||||||
|
estimated_time: 454
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_expert_parallel.py
|
||||||
|
estimated_time: 220
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_external_launcher.py
|
||||||
|
estimated_time: 550
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_full_graph_mode.py
|
||||||
|
estimated_time: 805
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_ilama_lora_tp2.py
|
||||||
|
estimated_time: 113
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_llama32_lora_tp2.py
|
||||||
|
estimated_time: 410
|
||||||
|
- name: tests/e2e/multicard/2-cards/spec_decode/test_quarot_eagle.py
|
||||||
|
estimated_time: 859
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_deepseek_multistream_moe_tp2
|
||||||
|
estimated_time: 112
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_qwen3_w4a8_dynamic_tp2
|
||||||
|
estimated_time: 104
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_qwen3_moe_sp_tp2
|
||||||
|
estimated_time: 176
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_deepseek_w4a8_accuracy_tp2
|
||||||
|
estimated_time: 125
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_qwen3_moe_fc2_tp2
|
||||||
|
estimated_time: 173
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_deepseek_v2_lite_fc1_tp2
|
||||||
|
estimated_time: 124
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_qwen3_dense_fc1_tp2
|
||||||
|
estimated_time: 99
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_qwen3_dense_prefetch_mlp_weight_tp2
|
||||||
|
estimated_time: 110
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_deepseek3_2_w8a8_pruning_mtp_tp2_ep
|
||||||
|
estimated_time: 111
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_deepseek3_2_w8a8c8_pruning_mtp_tp2_ep
|
||||||
|
estimated_time: 180
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_offline_inference_distributed.py::test_qwen3_w4a4_distributed_tp2
|
||||||
|
estimated_time: 202
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_pipeline_parallel.py
|
||||||
|
estimated_time: 357
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_prefix_caching.py
|
||||||
|
estimated_time: 470
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_quantization.py
|
||||||
|
estimated_time: 511
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_qwen3_moe.py
|
||||||
|
estimated_time: 986
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_qwen3_moe_routing_replay.py
|
||||||
|
estimated_time: 210
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_single_request_aclgraph.py
|
||||||
|
estimated_time: 290
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_disaggregated_encoder.py
|
||||||
|
estimated_time: 164
|
||||||
|
- name: tests/e2e/multicard/2-cards/test_sp_pass.py
|
||||||
|
estimated_time: 198
|
||||||
e2e-multicard-4-cards:
|
e2e-multicard-4-cards:
|
||||||
# TODO: recover skipped tests
|
- name: tests/e2e/multicard/4-cards/test_qwen3_next.py
|
||||||
- name: tests/e2e/multicard/4-cards/test_qwen3_next.py
|
estimated_time: 1868
|
||||||
estimated_time: 1250
|
- name: tests/e2e/multicard/4-cards/test_qwen3_5.py
|
||||||
- name: tests/e2e/multicard/4-cards/test_qwen3_5.py
|
estimated_time: 1030
|
||||||
estimated_time: 60
|
- name: tests/e2e/multicard/4-cards/test_data_parallel_tp2.py
|
||||||
- name: tests/e2e/multicard/4-cards/test_data_parallel_tp2.py
|
estimated_time: 306
|
||||||
estimated_time: 60
|
- name: tests/e2e/multicard/4-cards/test_kimi_k2.py
|
||||||
- name: tests/e2e/multicard/4-cards/test_kimi_k2.py
|
estimated_time: 19
|
||||||
estimated_time: 100
|
- name: tests/e2e/multicard/4-cards/long_sequence/test_accuracy.py
|
||||||
- name: tests/e2e/multicard/4-cards/long_sequence/test_accuracy.py
|
estimated_time: 1445
|
||||||
estimated_time: 60
|
- name: tests/e2e/multicard/4-cards/long_sequence/test_basic.py
|
||||||
- name: tests/e2e/multicard/4-cards/long_sequence/test_basic.py
|
estimated_time: 2186
|
||||||
estimated_time: 60
|
- name: tests/e2e/multicard/4-cards/long_sequence/test_chunked_prefill_cp.py
|
||||||
- name: tests/e2e/multicard/4-cards/long_sequence/test_chunked_prefill_cp.py
|
estimated_time: 1191
|
||||||
estimated_time: 60
|
- name: tests/e2e/multicard/4-cards/long_sequence/test_prefix_caching_cp.py
|
||||||
- name: tests/e2e/multicard/4-cards/long_sequence/test_prefix_caching_cp.py
|
estimated_time: 883
|
||||||
estimated_time: 60
|
- name: tests/e2e/multicard/4-cards/long_sequence/test_mtp.py
|
||||||
- name: tests/e2e/multicard/4-cards/long_sequence/test_mtp.py
|
|
||||||
estimated_time: 60
|
estimated_time: 60
|
||||||
is_skipped: true
|
is_skipped: true
|
||||||
- name: tests/e2e/multicard/4-cards/spec_decode/test_mtp_qwen3_next.py
|
- name: tests/e2e/multicard/4-cards/spec_decode/test_mtp_qwen3_next.py
|
||||||
estimated_time: 60
|
estimated_time: 1340
|
||||||
|
|||||||
Reference in New Issue
Block a user