Skip to content

feat(vllm): compile GLM-5.3 native support on 0.28 - #221

Merged
sihang-s merged 1 commit into
mainfrom
codex/vllm-028-glm53
Aug 28, 2026
Merged

sihang-s merged 1 commit into
mainfrom
codex/vllm-028-glm53

Conversation

@sihang-s

@sihang-s sihang-s commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Summary

  • build only the compile-sensitive GLM-5.3-Flash subset into the vLLM 0.28 wheel
  • pin FlashInfer to the immutable source for nightly-v0.6.18-20260819 while keeping CUDA 13.2.1
  • remove the obsolete local FlashInfer routing patch now included upstream
  • preserve the existing CoreWeave MNNVL native patch
  • leave the Python/runtime files and the two-file narrow block-table fix for downstream runtime layering

Compiled subset

  • cmake/external_projects/vllm_flash_attn.cmake
  • csrc/libtorch_stable/cache_kernels.cu

These files must exist before wheel/native-extension compilation because they pin the flash-attention native dependency and add compiled head_dim=512 cache-kernel support.

Source provenance

  • CoreWeave base: vLLM 2cf0a6915ce544dc493a0990f2ea38d81601128a
  • Upstream PR: [Model] add GLM-5.3-Flash support vllm-project/vllm#53906
  • Reviewed upstream head: 0f82208cb1d01e723bb25b607217a1adfb0cfc30
  • Original feature commit: 933876c388fb129ad82590660e6506614559cb86
  • FlashInfer: ee3fda10e0b9d82b71bda534bc2954d3176e6ded (nightly-v0.6.18-20260819)
  • FlashInfer no-group routing fix: 08ddfbcd2e89b2f4b68391825817909e30d445e2 (already included in the pinned source)
  • flash-attention: vllm-project/flash-attention@4eb29359a51b4fe67c8c0f0c5e931236971aa492
  • Compile patch SHA256: 00e84751bd79e3140fc4344223d9997548605d47ba66f4ee51d108520831d762

Existing native patch consolidation

  • moved the MNNVL Lamport mailbox fix into the numbered vllm-patches/ stack
  • refreshed it to the final upstream source hunk from vLLM #53000 at a047e2543da570a64d1bbfeac4fe44eff3e87a81
  • retained it because the pinned v0.28.0 source predates the fix; the first containing release tag is v0.28.1rc0
  • MNNVL patch SHA256: d4e98e4b302ecdaf463120b7ca1b1f567c18525b742ae83d2d9a445c042173e9

Compatibility contract

The downstream runtime patch must use the same vLLM base and reviewed upstream head. Python/runtime-only upstream deltas update only the downstream layer; CMake, CUDA/C++, native-binding, native-dependency, or FlashInfer changes require a new compiled image and digest.

Validation

  • compile-only patch applies cleanly to the exact vLLM 0.28 source pin
  • existing MNNVL patch applies after the compiled subset
  • Docker buildx checks pass for linux/amd64 and linux/arm64 with no warnings
  • vllm-downloader and flashinfer-downloader stages pass for linux/arm64
  • full amd64/arm64 wheel and image builds are delegated to this PR's CI

Follow-up

After CI publishes the new immutable multi-arch digest, downstream consumers can pin this compiled image and layer the Python/runtime GLM backport.

@sihang-s
sihang-s requested a review from a team as a code owner August 27, 2026 19:06
@nehashah-eng
nehashah-eng requested a review from a team August 27, 2026 19:40
Comment thread vllm-tensorizer/Dockerfile Outdated
@nehashah-eng

Copy link
Copy Markdown
Contributor

@alexeldeib also has other patch here - https://github.com/coreweave/ml-containers/tree/main/vllm-tensorizer ... maybe we should use all the patches in the same way.

@sihang-s sihang-s changed the title feat(vllm): backport GLM-5.3 Flash to 0.28 feat(vllm): compile GLM-5.3 native support on 0.28 Aug 27, 2026
@sihang-s
sihang-s force-pushed the codex/vllm-028-glm53 branch from 3c6cb1b to 7485122 Compare August 27, 2026 20:54
Comment thread vllm-tensorizer/Dockerfile Outdated
alexeldeib
alexeldeib previously approved these changes Aug 27, 2026

@alexeldeib alexeldeib left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

seems okay assuming it works 🤞

Let's strip out the 2 forks as soon as convenient in follow up when upstream is ready

@github-actions

Copy link
Copy Markdown

@sihang-s Build complete, success: https://github.com/coreweave/ml-containers/actions/runs/33115583554
Image: ghcr.io/coreweave/ml-containers/vllm-tensorizer:codex-vllm-028-glm53-7485122-2cf0a6915ce544dc493a0990f2ea38d81601128a-cuda13.2.1-ubuntu24.04

@sihang-s
sihang-s force-pushed the codex/vllm-028-glm53 branch 2 times, most recently from 89a5bff to 8292f08 Compare August 28, 2026 03:52
@github-actions

Copy link
Copy Markdown

@sihang-s Build complete, success: https://github.com/coreweave/ml-containers/actions/runs/33140149775
Image: ghcr.io/coreweave/ml-containers/vllm-tensorizer:codex-vllm-028-glm53-8292f08-2cf0a6915ce544dc493a0990f2ea38d81601128a-cuda13.2.1-ubuntu24.04

@sihang-s
sihang-s force-pushed the codex/vllm-028-glm53 branch 2 times, most recently from b342bee to 6682d04 Compare August 28, 2026 08:01
@sihang-s
sihang-s force-pushed the codex/vllm-028-glm53 branch from 6682d04 to bcbe5f0 Compare August 28, 2026 08:23
@github-actions

Copy link
Copy Markdown

@sihang-s Build complete, success: https://github.com/coreweave/ml-containers/actions/runs/33155124037
Image: ghcr.io/coreweave/ml-containers/vllm-tensorizer:codex-vllm-028-glm53-bcbe5f0-2cf0a6915ce544dc493a0990f2ea38d81601128a-cuda13.2.1-ubuntu24.04

Comment thread vllm-tensorizer/vllm-patches/0002-guard-narrow-block-table-slot-mapping.patch Outdated
Comment thread vllm-tensorizer/vllm-patches/0001-backport-glm-5-3-flash.patch Outdated
Comment thread vllm-tensorizer/vllm-patches/0001-backport-glm-5-3-flash.patch Outdated
# renovate-release: datasource=github-releases depName=vllm-project/vllm currentValue=v0.28.0 versioning=pep440
- vllm-commit: '2cf0a6915ce544dc493a0990f2ea38d81601128a'
flashinfer-commit: 'v0.6.16.post3'
flashinfer-commit: 'e62941a1da605fb9b3c8c50b23c9720df12cf6b4'

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Just to confirm this is a release right, not an arbitrary commit ?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

It's from a RC tag. Pinging commit SHA here for immutable build.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

v0.6.18rc10

@sihang-s
sihang-s merged commit f95a08d into main Aug 28, 2026
5 checks passed
@sihang-s
sihang-s deleted the codex/vllm-028-glm53 branch August 28, 2026 19:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants