Skip to content

fix(engine): adapt colocated AWEX to SGLang scheduler APIs - #1723

Open
Le8r0nJames wants to merge 1 commit into
mainfrom
zjw/sglang-colocate-compat-followup
Open

Le8r0nJames wants to merge 1 commit into
mainfrom
zjw/sglang-colocate-compat-followup

Conversation

@Le8r0nJames

Copy link
Copy Markdown
Collaborator

Description

Follow-up to #1703 (Qwen3.5 hybrid AWEX training), on the colocated path introduced
by #1500.

  • Resolve parallel coordinates from the scheduler, its parallel-state object, or
    TP worker, rather than silently treating missing nonzero ranks as rank zero.
  • Adapt release/resume/flush dispatch to the scheduler's weight-updater manager.
    Preserve typed acknowledgments for duplicate tagged requests.
  • Ignore parked waiting requests only while the scheduler is paused and native
    checks confirm there is no active work; retain and restore the request queue.
  • Bind the native AWEX reader's CUDA device, readiness tensor, and barrier device
    to the resumed model's logical device, not LOCAL_RANK or a physical GPU index.

The newly allowlisted build is exactly 0.5.18.dev10+g85b539146. This is not a claim
of compatibility with every 0.5.18 variant. Existing supported builds remain
allowlisted; no transport plan, weight-conversion, or placement policy changes.

Related Issue

Follow-up to #1703.
No separate issue.

Type of Change

  • 🐛 Bug fix
  • ✨ New feature
  • 💥 Breaking change
  • 📝 Documentation update
  • ♻️ Refactoring
  • ⚡ Performance improvement
  • ✅ Test coverage improvement

Checklist

  • I have read the Contributing Guide
  • Pre-commit hooks pass (pre-commit run --all-files)
  • Relevant tests pass; new tests added for new functionality
  • Documentation updated (if applicable; built with ./docs/build_all.sh)
  • Branch is up to date with main
  • Self-reviewed via /review-pr command
  • This PR was created by a coding agent via /create-pr
  • This PR is a breaking change

Breaking Change Details (if applicable): None.

Additional Context

This is an independent change based on main, not the experimental runtime stack.
It reuses tests already developed for the runtime; no additional test scenarios
were introduced during the split.

Validation: pytest -q tests/test_sglang_0518_compat.py tests/test_awex_sglang_plugin.py33 passed in the target Python 3.12 / Torch 2.9.1 environment.

Changed-file pre-commit
hooks pass. Full-tree hooks were attempted but hit local Python 3.10 environment
limitations (missing tomllib and the installed Torch lacking CPUOffloadPolicy).
No full distributed end-to-end regression is claimed for this rebased branch.

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.

1 participant