Repository navigation
[Core] Add explicit HWR registration bypass and progress logs - #7147
hsliuustc0106 wants to merge 1 commit into
Conversation
Signed-off-by: Hongsheng Liu <liuhongsheng4@huawei.com>
|
Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits. |
|
This PR appears to belong to: docs/design/module/diffusion/offloader.md. Module owners: @yuanheng-zhao @david6666666 @lishunyang12 @hsliuustc0106, please review your own changes and leave a short self-review comment describing what you checked. PRs without author self-review may not be assigned a reviewer. Please take a look when you have a chance. If you would like an automated review, mention @vllm-omni-review-bot in a comment. |
Omni ReviewBot triage noteAutomated triage of commit
These are automated triage suggestions only — the final decision belongs to the maintainers. |
Omni ReviewBot: no human activity for 16 days@hsliuustc0106 this pull request has had no human commit, comment or review since 2026-09-06. Please consider marking this PR as draft until work can resume. The author or a maintainer decides whether to change the PR state. To keep it moving, any one of these is enough: push an update, reply to the open blocker, or post the current plan and timeline. |
Omni ReviewBot routing recordAssigned Strict on zcode (GLM-5.3-Flash) under experiment |
Omni ReviewBot attempt recordReview attempt ended as failed (step 'review' (agent.review_diff): unhandled error: RuntimeError: zcode exited 1 without a result event: statusCode: undefined } Error: Turn execution failed (traceId: a45022ce-c0d0-43f7-87a9-21305ba3dd4a) — check |
Omni ReviewBot attempt recordReview attempt ended as failed (step 'review' (agent.review_diff): unhandled error: RuntimeError: zcode exited 1 without a result event: statusCode: undefined } Error: Turn execution failed (traceId: cdb41500-2595-4aac-b708-d1a33c65f27b) — check |
Omni ReviewBot attempt recordReview attempt ended as failed (step 'review' (agent.review_diff): unhandled error: RuntimeError: zcode exited 1 without a result event: statusCode: undefined } Error: Turn execution failed (traceId: 44f98e70-7b11-4264-91bf-99e204196ed7) — check |
vllm-omni-review-bot
left a comment
There was a problem hiding this comment.
Omni ReviewBot review
0 actionable finding(s).
CI at
729ccd7f11df(2026-10-10T05:35:34.294343+00:00): verification incomplete; required-check status is unknown. Observed Buildkite:buildkite/omni-release(passed).
Note: The assigned review arm
strict/zcode/GLM-5.3-Flashcould not complete this review, so it was produced by the fallback armdirect/cursor/auto. It is excluded from the routing experiment.
Full review analysis
PR description
This change adds an explicit HWR registration policy, dlo_host_registration_mode, with auto as the default and disabled as an opt-in. disabled is accepted only for no-AllGather distributed layerwise offload with Host Weight Runtime enabled, and the offloader returns before cudaHostRegister so bounded host staging is used while the existing pin-memory policy stays in place. auto keeps zero-budget unlimited registration and now logs the device, budget, and each CUDA region's entry and successful completion so a stalled synchronous register call leaves the last entered boundary visible. Rollback, lease retention, and the underlying driver hang are unchanged.
Change flow
flowchart LR
cli["[CHANGED] CLI, deploy, and diffusion config"]:::changed
transport["[CHANGED] OffloadConfig validation"]:::changed
bypass["[NEW] Disabled mode skips CUDA registration"]:::new
logs["[CHANGED] Auto mode region entry and completion logs"]:::changed
staging["[EXISTING] Two-slot bounded host staging"]:::existing
cli --> transport
transport --> bypass
transport --> logs
bypass --> staging
logs --> staging
classDef existing fill:#e5e7eb,stroke:#6b7280,color:#111827
classDef changed fill:#fef3c7,stroke:#d97706,color:#451a03,stroke-width:2px
classDef new fill:#dcfce7,stroke:#16a34a,color:#052e16,stroke-width:2px
classDef removed fill:#fee2e2,stroke:#dc2626,color:#450a0a,stroke-width:2px
No actionable findings.
🤖 This review was generated by InferMatrix Copilot, an open-source repo-maintenance agent for PR review, CI debugging and issue triage. Try it on your own repo, and ⭐ star it if it helped!
Purpose
Fixes #7146. Part of #7107; related to #6726, which remains unresolved.
Add
--dlo-host-registration-mode disabled/dlo_host_registration_mode="disabled"to select bounded host staging without registering HWR mappings. This avoids using a guessed undersized byte budget as a disable switch. Preserve theautodefault, zero-budget unlimited semantics, and staging's existing pin-memory policy.Carry the option through CLI, offline/stage configuration and OffloadConfig. Disabled mode exits before platform registration. Auto mode logs registration entry with device/budget and each CUDA region's entry/completion, making the last entered boundary visible if a synchronous call stalls. Existing rollback and lease retention are unchanged.
This is explicit avoidance and diagnostics, not safe cancellation of a CUDA call or a fix for the driver's underlying hang. No automatic timeout fallback or cross-rank coordination is introduced.
Test Plan
Existing CPU offloader fixtures exercise disabled/auto selection with zero and positive budgets, no registration call in disabled mode, preserved staging pinning policy, bounded slots, and lease cleanup. A fake CUDA runtime verifies that region-entry logs exist inside each call, completion logs only follow success, and failures still roll back. Config/CLI tests cover forwarding and invalid/ineligible settings.
CUDA_VISIBLE_DEVICES='' VLLM_TARGET_DEVICE=cpu \ /tmp/codex-pr6607-vllm028/bin/python -m pytest -n 0 -q \ tests/diffusion/offloader/test_distributed_layerwise_backend.py \ tests/diffusion/offloader/test_cuda_host_registration.py \ tests/config/test_omni_config.py \ tests/entrypoints/test_async_omni_diffusion_config.pyvLLM Version: 0.28.0; Python 3.12.13; torch 2.13.0+cu129; safetensors 0.8.0.
vLLM-Omni Commit: based on
039808e0d97d7969a2cb102d074c1e45b8ceef0b.Test Result