[TRTLLM-12721][docs] Design disaggregated peer cancellation protocol - #15799
Draft
chienchunhung wants to merge 13 commits into
Draft
[TRTLLM-12721][docs] Design disaggregated peer cancellation protocol#15799chienchunhung wants to merge 13 commits into
chienchunhung wants to merge 13 commits into
Conversation
Signed-off-by: Chien-Chun Hung <2679986+chienchunhung@users.noreply.github.com>
Signed-off-by: Chien-Chun Hung <2679986+chienchunhung@users.noreply.github.com>
Signed-off-by: Chien-Chun Hung <2679986+chienchunhung@users.noreply.github.com>
Signed-off-by: Chien-Chun Hung <2679986+chienchunhung@users.noreply.github.com>
Signed-off-by: Chien-Chun Hung <2679986+chienchunhung@users.noreply.github.com>
Signed-off-by: Chien-Chun Hung <2679986+chienchunhung@users.noreply.github.com>
Signed-off-by: Chien-Chun Hung <2679986+chienchunhung@users.noreply.github.com>
Signed-off-by: Chien-Chun Hung <2679986+chienchunhung@users.noreply.github.com>
Signed-off-by: Chien-Chun Hung <2679986+chienchunhung@users.noreply.github.com>
Signed-off-by: Chien-Chun Hung <2679986+chienchunhung@users.noreply.github.com>
Signed-off-by: Chien-Chun Hung <2679986+chienchunhung@users.noreply.github.com>
chienchunhung
force-pushed
the
codex/disagg-peer-cancel-terminal-protocol
branch
from
June 30, 2026 20:51
16462de to
718655b
Compare
This was referenced Jun 30, 2026
Signed-off-by: Chien-Chun Hung <2679986+chienchunhung@users.noreply.github.com>
Signed-off-by: Chien-Chun Hung <2679986+chienchunhung@users.noreply.github.com>
chienchunhung
force-pushed
the
codex/disagg-peer-cancel-terminal-protocol
branch
from
June 30, 2026 22:19
390cd4d to
63009f4
Compare
Collaborator
Author
|
/bot run --disable-fail-fast |
1 similar comment
Collaborator
Author
|
/bot run --disable-fail-fast |
Collaborator
|
PR_Github #56740 [ run ] triggered by Bot. Commit: |
Collaborator
|
PR_Github #56739 [ run ] triggered by Bot. Commit: |
Collaborator
|
PR_Github #56740 [ run ] completed with state |
Collaborator
|
PR_Github #56739 [ run ] completed with state
|
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
Adds the design scaffold for the generation-safe peer cancellation and terminal protocol needed to qualify default-on disaggregated in-flight cancellation after #15798.
This PR changes documentation only: it adds no runtime control messages, leaves cancellation default-off, and does not treat a released backend handle or received ACK as proof that NIXL memory is quiescent or reusable.
This branch is stacked on #15798. Review the single #15799 commit after the current #15798 head for the PR-specific delta.
Initial qualified scope
The proposed active protocol is limited to the C++ transceiver with the
CacheTransceiverNIXL backend over NIXL-UCX, preallocated buffers, a positive transfer timeout, overlap enabled, PP=1, CP=1, attention-DP off, layerwise off, and zero-copy off. Unsupported and unqualified configurations remain on their existing paths.Protocol decisions
OPENremains a proposal and cannot by itself authorize buffers, READY, or DMA.OPENcarries the completeRequestAndBufferInfothrough a capability-gated control notification variant and requires bounded structural validation before native decoding or state mutation.UNKNOWNquarantines still-owned, unproven lease generations and invokes bounded admission-stop/process-restart handling. Only topology-wideNOT_STARTEDpermits cancellation-related early release; the authoritative success fast path remains unchanged.createResult(), Nanobind, HTTP/base64, worker handoff, and retries, with total opaque-state bounds and ABI validation.Implementation and qualification gates
ContextPhaseParamsticket storage and preserve the ticket through every qualified handoff.DataTransceiverStateand the completeRequestAndBufferInfo.Validation
$trtllm-reviewlifecycle, collective, serialization, ownership, retry, and dynamic-peer passes; the final stop-condition found no remaining P0/P1 contradiction.Dependency graph
Solid arrows are required prerequisites. #15238 and #15737 are independent inputs to #15794. #15798 and #15799 are default-on hardening work and do not block the default-off merges of #15238, #15794, or #15795. The dotted edge means #15799 is required for #15738 unless an explicitly approved bounded fail/restart policy provides equivalent memory safety.
flowchart LR PR15238["#15238<br/>gated cancellation<br/>(default off)"] PR15737["#15737<br/>CacheSender lost-wakeup fix"] PR15794["#15794<br/>C++ protocol and buffer safety<br/>(default off)"] PR15795["#15795<br/>PyExecutor lifecycle safety<br/>(default off)"] PR15798["#15798<br/>CTX↔GEN protocol/mode negotiation"] PR15799["#15799<br/>peer cancel/terminal protocol<br/>(design scaffold)"] PR15738["#15738<br/>qualified default-on policy"] PR15238 --> PR15794 PR15737 --> PR15794 PR15794 --> PR15795 PR15794 --> PR15798 PR15798 --> PR15799 PR15795 --> PR15738 PR15798 --> PR15738 PR15799 -.->|or bounded fail/restart policy| PR15738