Skip to content

[main2main] upgrade main 0208#6639

Closed
wxsIcey wants to merge 9 commits intovllm-project:mainfrom
wxsIcey:main_0208
Closed

[main2main] upgrade main 0208#6639
wxsIcey wants to merge 9 commits intovllm-project:mainfrom
wxsIcey:main_0208

Conversation

@wxsIcey
Copy link
Copy Markdown
Collaborator

@wxsIcey wxsIcey commented Feb 9, 2026

What this PR does / why we need it?

  1. Fixed import problem of VllmInductorPass and get_pass_context due to [torch.compile] Reorganize vllm/compilation and tests/compile (0/N for vLLM IR) vllm#33731
  2. Fixed spec decode ut raise error due to [Spec Decode] Unified Parallel Drafting vllm#32887

Does this PR introduce any user-facing change?

How was this patch tested?

@github-actions github-actions Bot added documentation Improvements or additions to documentation ci/build module:tests module:ops labels Feb 9, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Feb 9, 2026

👋 Hi! Thank you for contributing to the vLLM Ascend project. The following points will speed up your PR merge:‌‌

  • A PR should do only one thing, smaller PRs enable faster reviews.
  • Every PR should include unit tests and end-to-end tests ‌to ensure it works and is not broken by other future PRs.
  • Write the commit message by fulfilling the PR description to help reviewer and future developers understand.

If CI fails, you can run linting and testing checks locally according Contributing and Testing.

@gemini-code-assist
Copy link
Copy Markdown
Contributor

Summary of Changes

Hello @wxsIcey, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request primarily focuses on upgrading the main branch to align with recent changes in the upstream vLLM project, specifically targeting compatibility with vLLM version 0.15.0. The core changes involve adapting import statements for key compilation passes and utilities, modifying test assertions to be more robust against minor execution variations, and introducing version-conditional logic to handle API differences in vLLM. These updates ensure the project remains functional and correctly tested with the latest vLLM developments.

Highlights

  • Version-Conditional Imports: Resolved import issues for VllmInductorPass, get_pass_context, and Attention by introducing version-conditional imports, ensuring compatibility with different vLLM versions (specifically v0.15.0 and newer).
  • Updated OpOverload Import: Updated the import path for OpOverload from vllm.compilation.fx_utils to torch._ops in compilation-related test files, reflecting an upstream change in its location.
  • Robust Test Assertions: Adjusted end-to-end test assertions for model execution and dummy run counts to allow for a tolerance range, accommodating potential minor variations in execution metrics rather than strict equality.
  • Version-Dependent LoRA Test Outputs: Implemented version-dependent logic for expected LoRA test outputs and process_weights_after_loading to maintain correctness across different vLLM versions.
  • Documentation Update: Updated the vLLM commit hash in the project's versioning policy documentation to reflect the latest compatible version.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • docs/source/community/versioning_policy.md
    • Updated the vLLM commit hash from d7e17aaacd5ed1b4b4be6bcfef3a1b7cbc84fc9a to c4df59ad43037a846eed353ce4c17dc264d18f4a in the versioning policy table.
  • tests/e2e/multicard/2-cards/test_aclgraph_capture_replay.py
    • Reordered import statements for vllm_ascend.utils and tests.e2e.conftest.
    • Refactored the import of destroy_distributed_environment and destroy_model_parallel into a single line.
    • Modified assertions for num_execute_model to check if the count falls within a range [expected_exec_model - dp_size, expected_exec_model].
    • Modified assertions for num_dummy_run to check if the count falls within a range [expected_dummy_run, expected_dummy_run + dp_size].
  • tests/e2e/singlecard/compile/backend.py
    • Changed the import of OpOverload from vllm.compilation.fx_utils to torch._ops.
  • tests/e2e/singlecard/compile/test_norm_quant_fusion.py
    • Changed the import of OpOverload from vllm.compilation.fx_utils to torch._ops.
  • tests/e2e/singlecard/test_llama32_lora.py
    • Reordered import statements and added vllm_version_is to vllm_ascend.utils.
    • Introduced conditional logic for EXPECTED_LORA_OUTPUT based on the vLLM version (0.15.0 or newer).
  • vllm_ascend/compilation/graph_fusion_pass_manager.py
    • Implemented version-conditional imports for get_pass_context and VllmInductorPass, switching between vllm.compilation and vllm.compilation.passes paths based on vllm_version_is("v0.15.0").
  • vllm_ascend/compilation/npu_graph_ex_pass_manager.py
    • Implemented version-conditional imports for get_pass_context and VllmInductorPass, switching between vllm.compilation and vllm.compilation.passes paths based on vllm_version_is("v0.15.0").
  • vllm_ascend/compilation/npugraph_ex_passes/graphex_allreduce_rmsnorm_fusion_pass.py
    • Implemented version-conditional imports for get_pass_context, switching between vllm.compilation and vllm.compilation.passes paths based on vllm_version_is("v0.15.0").
  • vllm_ascend/compilation/passes/allreduce_rmsnorm_fusion_pass.py
    • Implemented version-conditional imports for VllmInductorPass, switching between vllm.compilation and vllm.compilation.passes paths based on vllm_version_is("v0.15.0").
  • vllm_ascend/compilation/passes/norm_quant_fusion_pass.py
    • Implemented version-conditional imports for VllmInductorPass, switching between vllm.compilation and vllm.compilation.passes paths based on vllm_version_is("v0.15.0").
  • vllm_ascend/compilation/passes/qknorm_rope_fusion_pass.py
    • Implemented version-conditional imports for VllmInductorPass and Attention, switching between vllm.compilation and vllm.compilation.passes paths (for VllmInductorPass) and vllm.attention.layer and vllm.model_executor.layers.attention (for Attention) based on vllm_version_is("v0.15.0").
  • vllm_ascend/ops/mla.py
    • Modified the wrapped_process_weights function within MLADecorator to conditionally execute logic based on vllm_version_is("v0.15.0"), adapting to potential API changes in process_weights_after_loading.
Ignored Files
  • Ignored by pattern: .github/workflows/** (5)
    • .github/workflows/bot_pr_create.yaml
    • .github/workflows/dockerfiles/Dockerfile.lint
    • .github/workflows/pr_test_full.yaml
    • .github/workflows/pr_test_light.yaml
    • .github/workflows/schedule_codecov_refresh.yaml
Activity
  • No human activity (comments, reviews, or progress updates) has been recorded for this pull request yet.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Copy Markdown
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 updates the vLLM dependency and introduces several compatibility fixes to align with upstream changes, primarily by using conditional imports for modules that have been relocated. While the changes are correct, the compatibility logic is duplicated across multiple files. I've added a comment suggesting a refactoring to centralize this logic in a single compatibility module to improve maintainability.

Additionally, the pull request title and summary do not follow the repository's style guide. I have provided suggestions for both below to align with the contribution guidelines.

Suggested PR Title:

[main][Core][BugFix] Fix compatibility with upstream vLLM changes

Suggested PR Summary:

### What this PR does / why we need it?
This PR updates the codebase to be compatible with recent changes in the upstream vLLM repository (after commit `d7e17aaacd5ed1b4b4be6bcfef3a1b7cbc84fc9a`). Specifically, it addresses the relocation of several compilation-related modules such as `VllmInductorPass` and `get_pass_context` which were moved into a `passes` subdirectory in vLLM's `main` branch.

This PR introduces conditional imports based on the vLLM version to maintain backward compatibility with the `v0.15.0` release while supporting newer commits from the `main` branch. It also updates test expectations and relaxes some test assertions to accommodate minor behavioral changes from the upstream update.

Fixes an import problem of `VllmInductorPass` and `get_pass_context` due to [vllm/pull/33731](https://github.com/vllm-project/vllm/pull/33731).

### Does this PR introduce _any_ user-facing change?
No, this PR contains internal refactoring and compatibility fixes with no user-facing changes.

### How was this patch tested?
CI passed with existing and updated tests. The changes are primarily for compatibility and include test updates to reflect upstream changes.

Comment thread vllm_ascend/compilation/graph_fusion_pass_manager.py
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Feb 9, 2026

This pull request has conflicts, please resolve those before we can evaluate the pull request.

Meihan-chen and others added 7 commits February 9, 2026 13:30
Signed-off-by: Meihan-chen <jcccx.cmh@gmail.com>
Signed-off-by: Meihan-chen <jcccx.cmh@gmail.com>
Signed-off-by: Meihan-chen <jcccx.cmh@gmail.com>
Signed-off-by: Meihan-chen <jcccx.cmh@gmail.com>
Signed-off-by: hfadzxy <starmoon_zhang@163.com>
Signed-off-by: hfadzxy <starmoon_zhang@163.com>
Signed-off-by: hfadzxy <starmoon_zhang@163.com>
Signed-off-by: wxsIcey <1790571317@qq.com>
Signed-off-by: wxsIcey <1790571317@qq.com>
@wxsIcey wxsIcey added ready read for review ready-for-test start test by label for PR labels Feb 9, 2026
Signed-off-by: wxsIcey <1790571317@qq.com>
@github-actions
Copy link
Copy Markdown
Contributor

This pull request has conflicts, please resolve those before we can evaluate the pull request.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci/build documentation Improvements or additions to documentation merge-conflicts module:ops module:tests ready read for review ready-for-test start test by label for PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants