Skip to content

Conversation

jeanschmidt
Copy link
Contributor

@jeanschmidt jeanschmidt commented Aug 27, 2025

This PR is part of the CI sprint initiative, with the goal of reduce CI latency for tests.

This is following the first step from #23668

It breaks down 'V1 Tests' in 3 groups, this is based on the analysis of the wallclock for test runs:

[2025-08-27T02:20:48Z] + pytest -v -s v1/core - 00:03 
[2025-08-27T02:23:19Z] + pytest -v -s v1/engine - 00:13
[2025-08-27T02:36:32Z] + pytest -v -s v1/entrypoints - 00:36
[2025-08-27T03:04:35Z] + pytest -v -s v1/executor - 00:02
[2025-08-27T03:06:21Z] + pytest -v -s v1/sample - 00:07
[2025-08-27T03:13:35Z] + pytest -v -s v1/logits_processors - 00:05
[2025-08-27T03:18:39Z] + pytest -v -s v1/worker - 00:01
[2025-08-27T03:19:29Z] + pytest -v -s v1/structured_output - 00:00
[2025-08-27T03:19:44Z] + pytest -v -s v1/spec_decode - 00:08
[2025-08-27T03:27:46Z] + pytest -v -s v1/kv_connector/unit - 00:04
[2025-08-27T03:31:17Z] + pytest -v -s v1/metrics - 00:01
[2025-08-27T03:32:25Z] + pytest -v -s v1/test_serial_utils.py - 00:00
[2025-08-27T03:32:39Z] + pytest -v -s v1/test_utils.py - 00:00
[2025-08-27T03:32:56Z] + pytest -v -s v1/test_oracle.py - 00:03
[2025-08-27T03:35:06Z] + pytest -v -s v1/test_metrics_reader.py - 00:00
# TODO: accuracy does not match, whether setting
# VLLM_USE_FLASHINFER_SAMPLER or not on H100.
[2025-08-27T03:35:20Z] + pytest -v -s v1/e2e - 00:20
# Integration test for streaming correctness (requires special branch).
[2025-08-27T03:55:34Z] + pip install -U git+https://github.com/robertgshaw2-redhat/lm-evaluation-harness.git@streaming-api - 00:06
[2025-08-27T03:55:48Z] + pytest -v -s entrypoints/openai/correctness/test_lmeval.py::test_lm_eval_accuracy_v1_engine
[2025-08-27T04:01:13Z] 33m=============================== warnings summary ===============================

as a important note, there are 3 outliers:

  • v1/e2e - 00:20
  • v1/entrypoints - 00:36
  • v1/engine - 00:13

it seems the most efficient approach would be breaking into the following groups:

    1. v1/e2e - 00:20
    1. v1/entrypoints - 00:36
    1. ...everything else

Copy link

👋 Hi! Thank you for contributing to the vLLM project.

💬 Join our developer Slack at https://slack.vllm.ai to discuss your PR in #pr-reviews, coordinate on features in #feat- channels, or join special interest groups in #sig- channels.

Just a reminder: PRs would not trigger full CI run by default. Instead, it would only run fastcheck CI which starts running only a small and essential subset of CI tests to quickly catch errors.

You ask your reviewers to trigger select CI tests on top of fastcheck CI.

Once the PR is approved and ready to go, your PR reviewer(s) can run CI to test the changes comprehensively before merging.

To run CI, PR reviewers can either: Add ready label to the PR or enable auto-merge.

If you have any questions, please reach out to us on Slack at https://slack.vllm.ai.

🚀

@mergify mergify bot added the ci/build label Aug 27, 2025
Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request aims to reduce CI latency by splitting the 'V1 Tests' job into three parallel jobs. The implementation correctly separates the longest-running test suites, v1/e2e and v1/entrypoints, into their own jobs. However, there are two key areas for improvement. First, the new 'V1 Test (others)' job is missing a necessary source file dependency, which could cause it to not run when it should. Second, the distribution of tests among the new jobs is unbalanced, leaving one job with a runtime of nearly an hour. A more balanced distribution could further reduce the overall CI wall-clock time.

@jeanschmidt jeanschmidt force-pushed the jeanschmidt/refactor_v1_tests branch from 4a7da1c to e06963c Compare August 27, 2025 15:05
@jeanschmidt jeanschmidt force-pushed the jeanschmidt/refactor_v1_tests branch from f539987 to 7e7273c Compare August 27, 2025 17:07
@simon-mo simon-mo added the ready ONLY add when PR is ready to merge/full CI is needed label Aug 27, 2025
Signed-off-by: Jean Schmidt <[email protected]>
Signed-off-by: Jean Schmidt <[email protected]>
Signed-off-by: Jean Schmidt <[email protected]>
@vllm-bot vllm-bot merged commit 0583578 into vllm-project:main Aug 28, 2025
4 of 8 checks passed
zhewenl pushed a commit to zhewenl/vllm that referenced this pull request Aug 28, 2025
dumb0002 pushed a commit to dumb0002/vllm that referenced this pull request Aug 28, 2025
2015aroras pushed a commit to 2015aroras/vllm that referenced this pull request Aug 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ci/build ready ONLY add when PR is ready to merge/full CI is needed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants