Repository navigation
Fix unified HiCache physical transfers #39479
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
+1,671
−357
Merged
Changes from all commits
Commits
Show all changes
173 commits
Select commit
Hold shift + click to select a range
22b209a
Support unified memory with speculative decoding
e887a18
fix: use hybrid SWA draft flag for pool setup
merrymercy ad6c3b4
Use shared byte capacity for unified SWA pools
1aac878
Avoid double-rounding unified SWA demand
ZYHowell 7ee2c74
Reject unsupported unified pool scheduler modes
c54b97d
Remove unified pool gate-only tests
8892c52
Limit shared-capacity changes to enabled paths
48b2a24
Fix unified SWA eviction over-reclaim
139a9a1
Remove added unified eviction planner test
YhZhuang 9c31d3d
Remove low-signal unified capacity tests
1599357
Adapt shared capacity to current main
c2296be
Address unified SWA admission feedback
05cfb81
Support unified memory page envelopes in PD transfers
c4551a5
Use decode request pool for unified SWA PD
623f762
Reject unified Mooncake speculative transfers
c9b4c29
Simplify unified draft index plumbing
5a7d1ef
Fix unified SWA PD capacity accounting
d5e5e7a
Support unified memory decode host pools
705f648
Fix unified draft retraction indices
f37d710
Simplify unified decode host allocation
1b75db1
Gate unsupported unified hybrid host transfers
f806ad5
Fix unified HiCache physical transfers
08a06eb
Prefer same-side eviction for unified SWA
ZYHowell 6c46fed
Merge updated shared-capacity branch into PD page envelopes
ZYHowell 28962eb
Merge updated PD page-envelope branch into decode host pool
ZYHowell fe5787a
Prefer SWA tombstones before unified FULL eviction
5d19c4f
Merge updated shared-capacity policy
bdb7287
Merge updated UMP PD stack into host pool
e6e491b
Restore upstream unified cache eviction policy
cc12f23
Merge restored eviction policy into PD page envelopes
45b4663
Merge restored eviction policy into decode host pool
66fed93
Use joint capacity accounting for unified SWA
aa6d1cd
Merge joint capacity accounting into PD page envelopes
43ebdb4
Merge joint capacity accounting into decode host pool
329fb0c
Merge latest unified host-pool stack
db64894
Refactor unified host pool allocation
f16293b
Support unified HiCache buffer staging
54d3892
Merge compacting unified host pool
d3e06da
Reject unsafe unified decode host paths
136669c
Enable shared unified HiCache staging safely
63abe66
Merge unified decode host safety gates
f0af6be
Guard unified HiCache compatibility
c41b068
Add unified capacity regression coverage
43ecd06
Use physical SWA indices for PD transfer
6fe1e7d
Merge unified capacity fixes into PD envelopes
3ef84f1
Merge transfer-index fixes into decode host pool
1f8c4fe
Merge review fixes into HiCache transfers
d315b7d
Merge remote-tracking branch 'origin/main' into yonghao/ump-shared-ca…
7fadf8e
Merge commit 'd315b7d65e' into yonghao/ump-pd-page-envelopes
372d211
Merge commit '7fadf8efc0' into yonghao/ump-decode-host-pool
d4462ed
Merge commit '372d2111cc' into yonghao/ump-hicache-physical-transfers
940d41b
Update PD priority test fixture for draft indices
d01513d
Update HiSparse test fixture for unified memory
25d1e3b
Merge commit 'd01513db8e' into yonghao/ump-pd-page-envelopes
ec0e777
Merge commit '25d1e3bc64d22be2ed3665e033a2218a1f7cbce2' into yonghao/…
f417938
Merge commit 'ec0e7777f38d651b0c3e849d033b81985fc091b3' into yonghao/…
b0018de
Update decode offload test fixtures for sidecars
3c26277
Merge commit 'b0018def8d' into yonghao/ump-hicache-physical-transfers
18142d6
Keep physical reservation cleanup host-sync-free
8bc1586
Plan unified FULL/SWA reclaim against physical capacity
7f10ff8
Merge shared-capacity fixes into page-envelope transfers
6f9a8f2
Merge capacity fixes and guard shared host-layout access
95e9b6d
Merge host-pool updates and preserve unified transfer lifetimes
653c010
Restore unified pool cleanup and scoped compatibility gates
07df3f4
Merge shared-capacity cleanup into PD page envelopes
d9ce0bb
Merge UMP cleanup into shared host pool
097e185
Merge UMP cleanup and restore host-sync-free physical release
f83adaf
Merge upstream main and adapt unified capacity to allocator refactors
b32e13e
Merge shared capacity refresh and adapt PD envelope allocators
a3a32f2
Merge PD refresh and reconcile shared host pool with upstream UMBP
b20d10f
Merge host pool refresh and adapt HiCache physical transfers
f604efb
Keep HiSparse fixture compatible with Python 3.10
e09999e
Merge Python 3.10 fixture compatibility fix from shared capacity
35519a8
Merge Python 3.10 fixture compatibility fix from PD envelopes
87df0bc
Merge Python 3.10 fixture compatibility fix from host pool
70312b5
Remove unrelated UMP diff churn
054c220
Merge shared-capacity cleanup into PD page envelopes
7a71192
Merge PD cleanup into decode host pool
709e1df
Merge host-pool cleanup into physical transfers
4e0e1c3
Fix unified pool admission rounding
69747f6
Fix full-envelope PD transfers and merge capacity fixes
b7c0f51
Fix L2 producer ordering and host element metadata
3870148
Fix SWA-only backup and shared-host prefetch fallback
70671d5
Refactor unified SWA budget handling
66a2172
Merge shared-capacity cleanup
f7cda39
Merge PD shared-capacity cleanup
b03bcd2
Merge host-pool shared-capacity cleanup
cb88f1f
Centralize decode SWA reservation routing
415c3bc
Merge decode reservation cleanup
759b428
Unify host transfer lifecycle and index preparation
dc84a3b
Merge shared host transfer cleanup
320d041
Separate storage hit allocation from queue policy
809821e
Keep short-prefix threshold policy at the cache boundary
29545f8
Simplify shared SWA budget paths
8d4460c
Merge shared SWA budget cleanup
3b85f00
Merge shared SWA budget cleanup
242578b
Merge shared SWA budget cleanup
4d1fa0f
Fix unified capturer indexing and asymmetric SWA reservation
d0a10e5
Merge shared-capacity fixes and repair unified CPU copy API
4ed9263
Merge PD fixes and use physical SWA offload indices
e951bb1
Merge host-pool fixes and preserve eviction progress under host pressure
567f4f5
Consolidate unified allocation, admission and capacity policies
6066493
Merge capacity cleanup and cover real SWA tail allocation
1e3a2c4
Merge unified admission and PD allocation review cleanup
1fcd125
Merge UMP cleanup and preserve non-unified HiCache failure semantics
6c7be62
Refactor SWA admission into allocator-owned memory budgets
ch-wan 4fdb2a7
Fix unaligned unified SWA prefill admission
5a8f410
Merge unified prefill rounding fix into PD support
39a7bcc
Merge unified prefill rounding fix into host pool
a9a744a
Merge unified prefill rounding fix into HiCache transfers
089673a
Refactor unified SWA allocators into sibling capacity policies
121fdde
Clean up unified PD rejection and transfer interfaces
1ff144d
Unify host-pool allocation and L2 transfer lifecycles
e843a0a
Consolidate UMBP page layout and SWA host-pool dispatch
3c9040a
Merge reviewed shared-capacity cleanup into PD layer
a8e0085
Merge reviewed PD cleanup into host-pool layer
8e0df01
Merge host-pool cleanup preserving HiCache bindings
564845d
Use shared byte capacity for unified SWA pools
a7084b3
Keep HiSparse fixture compatible with Python 3.10
b505c11
Remove unrelated UMP diff churn
99ee780
Fix unified pool admission rounding
8fd4aa4
Refactor unified SWA budget handling
fa6c95a
Simplify shared SWA budget paths
d9c7447
Fix unified capturer indexing and asymmetric SWA reservation
6cf450c
Consolidate unified allocation, admission and capacity policies
0a80658
Refactor SWA admission into allocator-owned memory budgets
ch-wan 1f3b496
Fix unaligned unified SWA prefill admission
f208606
Refactor unified SWA allocators into sibling capacity policies
f0a0085
Fix shared prefill deferral and capture and draft capacity bounds
ch-wan ab2ea29
Validate inherited unified allocator PD and free-group contracts
ch-wan e3fa99e
Merge updated shared-capacity branch into UMP PD support
5e5433a
Merge updated UMP PD support into unified host pools
f7f0741
Update staged transfer fixtures for host-pool hooks
74b7f42
Merge updated unified host pools and preserve HiCache transfer fixes
ab7d973
Explain SWA prefill reservation and chunking safety
ea634ec
Merge shared-capacity updates and simplify PD reservation checks
eb907b6
Merge PD updates and unify host layout and write interfaces
acce638
Merge host-pool updates and simplify HiCache allocation policies
e6a273f
Use declared HiCache transfer capability fields
ccd3487
Fix Rust SWA backup sources and gate sidecar error recovery
d9c9565
Merge host-pool capability cleanup into HiCache transfers
81d00a3
Refresh shared KV budgets during decode admission
a640ec3
Align HiCache prefix reuse with SWA tail allocation
405e92b
Port profiled SWA byte-budget fix from #36729
bd62e85
Merge shared KV budget fixes into unified host pool
bbbebd7
Merge shared KV budget fixes into HiCache physical transfers
1c2fe92
Merge latest main after shared-capacity PR landed
ZYHowell 3606f52
Merge updated PD page-envelope base
ZYHowell ba4a021
Sync main through b803cfa0c4
ZYHowell 7373a45
Sync updated PD base through latest main
ZYHowell 3e1d4de
Merge updated host-pool base and resolve HiCache conflicts
ZYHowell 15ec3e5
Sync updated host-pool base through latest main
ZYHowell f7e5443
Share precise SWA tail allocation across unified layouts
ZYHowell 4278c21
Merge shared SWA tail allocation fix from lower stack
ZYHowell 7269c5c
Merge shared SWA tail allocation fix from lower stack
ZYHowell e514294
Merge main b02e16a895 and retain both PD transfer test groups
ZYHowell 2281f9a
Merge fixed main snapshot through the PD base
ZYHowell 1e1c33d
Merge fixed main snapshot and preserve HiCache prefix metadata with e…
ZYHowell 086fe1a
Merge main and reconcile unified HiCache transfer contracts
5f17c46
Merge latest main and retain focused component-only fallback coverage
e8717bb
Merge remote-tracking branch 'origin/main' into task/t-0010-pr39479
a213b8a
Preserve Mooncake buffer host pools and reconcile allocator test cont…
64eda39
Clean redundant unified HiCache test setup
6027473
Align unified HiCache storage and staged SWA ownership
7b79095
Remove redundant shared-host allocation collectives
4154c31
Align HiCache host refill and validate write policy transitions
573ff05
Document incoming host rows retained by tree refill
95adcf7
Merge main into unified memory HiCache transfers
ZYHowell b55790f
Preserve unified cache transfer lifetimes and SWA physical indices
ZYHowell e8364fe
Merge main into unified-memory HiCache transfers
ZYHowell 2ce5783
Merge main into unified-memory HiCache transfers
ZYHowell 90e9dcb
Merge main into unified-memory HiCache transfers (resolve _set_capaci…
metamergebot e6487f4
Merge main into unified-memory HiCache transfers (pick up #42454 test…
metamergebot File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
On main,
handle_unified_memory_poolrequirespp_size == 1and lazy compaction only under PD disaggregation. Here both become startup assertions for any unified-memory + HiCache run.--enable-unified-memory --enable-hierarchical-cache --pp-size 2now fails to launch, and so does the same command withSGLANG_DISABLE_LAZY_COMPACTION=1, the A/B and rollback escape hatch. Main starts both.The lazy-compaction assert comes from the new unbound
alloc_physicalreservations. Main's bind-at-allocation path has no equivalent guard. The PP assert has no stated reason, and the description says the PP restrictions were removed.Could you either keep main's binding path for these configurations, or give the reason and list both as trade-offs in the description?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agreed. #42708 removes both asserts for unified memory with HiCache; the PD disaggregation asserts stay.
test/registered/unit/server_args/test_unified_hicache_startup_args.pychecks that--pp-size 2andSGLANG_DISABLE_LAZY_COMPACTION=1pass the argument layer. That is only an argument-layer check: pipeline-parallel serving with unified memory and HiCache has not been validated.One correction on the lazy-compaction case. Main before #39479 also stopped at startup with
SGLANG_DISABLE_LAZY_COMPACTION=1, just later:python/sglang/srt/managers/scheduler.pyL598–L609 at 6cc661f, the parent of the Fix unified HiCache physical transfers #39479 merge).install_move_gateasserts lazy compaction (python/sglang/srt/mem_cache/allocator/unified_sub_pool.pyL242–L261, same commit).SGLANG_DISABLE_LAZY_COMPACTION=1turns lazy compaction off (python/sglang/srt/mem_cache/kv_cache_configurator.pyL149–L152).That allocator-level check predates #39479, and the follow-up leaves it unchanged.