Skip to content

[CI] Shard (H200 MIG 35GB / MI355 DPX) Multimodal Models (Standard) 4 automatically - #62562

Merged
khluu merged 1 commit into
vllm-project:mainfrom
Thangnguyenvn98:agent/automatic-shard-mm-standard-4
Oct 20, 2026
Merged

khluu merged 1 commit into
vllm-project:mainfrom
Thangnguyenvn98:agent/automatic-shard-mm-standard-4

Conversation

@Thangnguyenvn98

@Thangnguyenvn98 Thangnguyenvn98 commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

Overview

Multimodal Models (Standard) 4 runs as one long job because one of its commands, Whisper, starts with cd .. &&, and automatic sharding only plans steps whose test commands are plain pytest. This PR makes that command plain pytest and turns on automatic_shard for the step and its AMD mirror. It replaces the hand split in #57065.

Claims

  • The Whisper command runs from the step's working directory, like the other three:
    pytest -v -s models/multimodal/generation/test_whisper.py -m core_model
  • The cd .. and VLLM_WORKER_MULTIPROC_METHOD=spawn are no longer needed:
  • The step and its mirror each run as parallel jobs planned from main's per-file timings. Every test runs exactly once across the shards:
Step Planned shards
multi-modal-models-standard-4-other-whisper 3 (test_vit_cudagraph.py split by test)
amd-multi-modal-models-standard-4-other-whisper (mirror) 3
  • If planning fails, the step runs as one job, as it does today.

Validation

  • Planned both on this branch with ci-infra main's runtime_shard.plan_step, using main's timings on each step's own queue.
  • Rendered both with the pipeline generator and ran every shard's commands against a mock test tree, as a PR build and with main's pytest -p ci_otel wrapper. Every test ran in exactly one shard, with the same env.
  • /ci run checks the real question: whether Whisper passes without cd .. on both lanes.

Details

  • Decision to check: dropping cd .. instead of moving Whisper to its own step. If the build shows the old import failure, the fallback is a separate Whisper step with working_dir: /vllm-workspace.
  • Kept on purpose: the step key, even though "whisper" stays in it, because the planner looks up timings by key. Per-job timeouts are unchanged.

Pull Request Checklist
  • I used vLLM's /pr-checklist skill. (Mandatory for agents, optional for humans).

  • AI assistance was used during the creation of this PR.

  • Design Fit: Minimizes impact on core components, reuses existing functionality, and justifies added complexity.

  • Testing and Validation: Validates the change and ensures any added tests are meaningful and reliable, with CI coverage or documented CI resource constraints and validation performed outside CI.

  • Code Quality and Style: Keeps code and comments clear and concise, and updates relevant documentation and examples.

  • Pull Request Contents: Includes a brief summary and relevant links, supports claims with evidence, explains root causes and implementation trade-offs, and follows the contributing guide.

🤖 Generated with Claude Code

… automatically

Run the Whisper command as plain pytest from the step's working directory,
so the planner can shard the step, and turn on automatic_shard for the
step and its AMD mirror.

The `cd ..` dates from when a spawned test process could only import
`tests.*` from the repo root. spawn_new_process_for_each_test now puts the
repo root on PYTHONPATH itself, and test_whisper.py sets
VLLM_WORKER_MULTIPROC_METHOD=spawn in an autouse fixture.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Thang Nguyen <thangnguyenvn647@gmail.com>
@Thangnguyenvn98

Copy link
Copy Markdown
Contributor Author

/ci run

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Claude Code Review

This pull request is from a fork — automated review is disabled. A repository maintainer can comment @claude review to run a one-time review.

@github-actions

Copy link
Copy Markdown

✅ Triggered Buildkite CI #96011 for commit 74e8121b8687.

@mergify mergify Bot added the ci/build label Oct 19, 2026
@khluu
khluu merged commit 87fa712 into vllm-project:main Oct 20, 2026
42 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants