Skip to content

Weight Loader v2 PR5: Qwen3.5 fused experts - #31267

Closed
JD-ETH wants to merge 12 commits into
sgl-project:mainfrom
JD-ETH:feat/weight-loader-v2-pr5-qwen35
Closed

JD-ETH wants to merge 12 commits into
sgl-project:mainfrom
JD-ETH:feat/weight-loader-v2-pr5-qwen35

Conversation

@JD-ETH

@JD-ETH JD-ETH commented Jul 15, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Stack child of PR4 / fork #14. Relative (fork) PR diffs: see JD-ETH stack links in #31051.

  • FusedExpertDispatch + Qwen3.5 v2

Tracking: #31051
PR1: #28671

Test plan

  • CPU unit tests for this PR slice
  • CI after stack parents land

Made with Cursor


CI States

Latest PR Test (Base): ❌ Missing run-ci label -- add it to run CI tests.
Latest PR Test (Extra): ❌ Blocked -- run-ci is required first.

JD-ETH and others added 12 commits June 18, 2026 18:39
Document PR1–PR9 coverage plan, post_load protocol, unsupported models,
and link from auto_loader module docstring.

Co-authored-by: Cursor <cursoragent@cursor.com>
Replace P2P/streaming framing with verify_complete asserting all
expected runtime tensors were updated.

Co-authored-by: Cursor <cursoragent@cursor.com>
- Use msgspec.Struct for StackedParamsDispatch; RemapRegistry requires WeightsMapper
- Demo RemapRegistry on Llama v2 path with submodule stacked loaders
- Parametrize stacked/remap unit tests with real Llama checkpoint names
- Tighten v1/v2 equiv test: randomize init, compare all named_parameters
- Drop SGLANG_ENABLE_WEIGHT_LOADER_V2 env comment

Co-authored-by: Cursor <cursoragent@cursor.com>
Add registered SRTRunner tests for Qwen2 v1/v2 and transformers backend;
restore manual get_model state_dict equiv test; drop test_auto_loader.py.

Co-authored-by: Cursor <cursoragent@cursor.com>
Add wave-1 parallelism, sequencing for PR7–PR9, and infra conflict hotspots.

Co-authored-by: Cursor <cursoragent@cursor.com>
Remove design.md from the PR; point auto_loader docstring at the
migration tracker issue linked from RFC sgl-project#24703.

Co-authored-by: Cursor <cursoragent@cursor.com>
Add load_with_stacked_dispatch helper and migrate P0 dense models to env-gated
AutoWeightsLoader v2 paths with legacy preservation and tests.

Co-authored-by: Cursor <cursoragent@cursor.com>
ExpertParamsDispatch centralizes expert shard routing; gate standard MoE
models behind SGLANG_ENABLE_WEIGHT_LOADER_V2 while keeping legacy loaders.

Co-authored-by: Cursor <cursoragent@cursor.com>
Opt-in via SGLANG_ENABLE_WEIGHT_LOADER_V2 with AutoWeightsLoader submodule
loaders, shared-expert preload, MLA fusion remaps, and post_load_weights for w_kc/w_vc.

Co-authored-by: Cursor <cursoragent@cursor.com>
Introduce FusedExpertDispatch and Qwen3.5 checkpoint loading helpers, gate
Qwen3.5 load_weights behind SGLANG_ENABLE_WEIGHT_LOADER_V2, and add CPU
fan-out unit tests for fused expert routing.

Co-authored-by: Cursor <cursoragent@cursor.com>
ExpertParamsDispatch, FusedExpertDispatch, and load_qwen35_moe_checkpoint_weights
complete PR5 weight loader v2 for fused experts and GDN packed projections.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gemini-code-assist

Copy link
Copy Markdown
Contributor

Warning

You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again!

@JD-ETH

JD-ETH commented Jul 15, 2026

Copy link
Copy Markdown
Contributor Author

Closing for now — PR2–PR6 stack will live on the JD-ETH fork first.

Relative stack PRs: https://github.com/JD-ETH/sglang/pulls
Tracking: #31051
PR1 remains: #28671

@JD-ETH JD-ETH closed this Jul 15, 2026
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.

1 participant