Skip to content

[CI][AMD] Deselect distributed tests in the MI300 Model Executor step - #62680

Merged
AndreasKaratzas merged 1 commit into
vllm-project:mainfrom
stefankoncarevic:ci-amd-model-executor-not-distributed
Oct 20, 2026
Merged

AndreasKaratzas merged 1 commit into
vllm-project:mainfrom
stefankoncarevic:ci-amd-model-executor-not-distributed

Conversation

@stefankoncarevic

@stefankoncarevic stefankoncarevic commented Oct 20, 2026 •

Copy link
Copy Markdown
Collaborator

The failure

(MI300) Model Executor in AMD CI nightly 15028, the only failure among 1282 passing tests:

FAILED model_executor/model_loader/test_weight_cache.py::test_ipc_cache_cold_start_and_warm_restart_tp2_ep - RuntimeError: Engine core initialization failed.

The root cause is in the second worker:

AssertionError: DP adjusted local rank 1 is out of bounds for 1 devices.

The cause

#55490 added test_ipc_cache_cold_start_and_warm_restart_tp2_ep with @pytest.mark.distributed(num_gpus=2) and, in the same commit, added and (not distributed) to the pytest command in .buildkite/test_areas/model_executor.yaml, for the H200 step and its AMD mirror alike. .buildkite/test-amd.yaml kept -m '(not slow_test)', and that step runs on agent_pool: mi300_1, so a tp=2 test is collected on a single GPU and the second worker has no device to bind.

The change

The same filter as the upstream step. Collection over model_executor goes from 1342 selected and 33 deselected to 1341 and 34; the tp=2 test is the only one removed.

Tests

The test itself is healthy: with two GPUs visible it passes on MI300 (gfx942, ROCm 10.0), 1 passed in 267.66s. With one GPU visible it reproduces the CI assertion verbatim, and with this change it is deselected instead of collected.

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.

The step runs on a single GPU (agent_pool: mi300_1), but its pytest command
does not deselect distributed tests. vllm-project#55490 added a tp=2 weight cache test
together with the "not distributed" filter in test_areas/model_executor.yaml;
test-amd.yaml kept the old command, so the test is collected and the second
worker fails with "DP adjusted local rank 1 is out of bounds for 1 devices".

Signed-off-by: Stefan Koncarevic <stefan.koncarevic@amd.com>

@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.

@stefankoncarevic

Copy link
Copy Markdown
Collaborator Author

/ci run

@mergify mergify Bot added ci/build rocm Related to AMD ROCm labels Oct 20, 2026
@github-actions

Copy link
Copy Markdown

❌ @stefankoncarevic, A reviewer with write access must run /ci run, approve the PR, or add the ready label first.

@github-project-automation github-project-automation Bot moved this to Todo in AMD Oct 20, 2026
@stefankoncarevic stefankoncarevic added the ready ONLY add when PR is ready to merge/full CI is needed label Oct 20, 2026
@stefankoncarevic

Copy link
Copy Markdown
Collaborator Author

/ci run

@github-actions

Copy link
Copy Markdown

✅ @stefankoncarevic, CI is now available for this PR.

  • /ci run starts upstream CI; /amd-ci run starts AMD CI only.
  • Run commands test your branch with every commit currently on its upstream target branch. If it is behind, the bot merges the target branch into it first (pull before pushing again). Append --allow-stale to a run command to test an outdated branch as is, at your own risk.
  • /ci retry retries failed jobs in the CI build for the current PR head. If the current head has no CI build, it starts a new CI build for the current head containing only jobs that failed in the latest earlier CI build for this PR.
  • /amd-ci retry retries failed jobs in AMD CI for the current PR head. Use /amd-ci run when the current head has no AMD CI build.
  • /ci cancel cancels scheduled or running CI builds for this PR branch; /amd-ci cancel does the same for AMD CI only.

@stefankoncarevic

Copy link
Copy Markdown
Collaborator Author

/amd-ci run

@github-actions

Copy link
Copy Markdown

✅ Triggered Buildkite CI #96132 for commit 8b80863a730a.

@github-actions

Copy link
Copy Markdown

✅ Triggered Buildkite AMD CI #15031 for commit 8b80863a730a.

@AndreasKaratzas
AndreasKaratzas merged commit 11a8d57 into vllm-project:main Oct 20, 2026
31 checks passed
@github-project-automation github-project-automation Bot moved this from Todo to Done in AMD Oct 20, 2026
bantianyue pushed a commit to bantianyue/vllm that referenced this pull request Oct 28, 2026
…vllm-project#62680)

Signed-off-by: Stefan Koncarevic <stefan.koncarevic@amd.com>
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 rocm Related to AMD ROCm

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants