Skip to content

fix(merge): drop stray break in amo_nonfetch_add - #17

Closed
fergusfinn wants to merge 21 commits into
upstream-basefrom
fix/drop-stray-amo-break
Closed

fix(merge): drop stray break in amo_nonfetch_add#17
fergusfinn wants to merge 21 commits into
upstream-basefrom
fix/drop-stray-amo-break

Conversation

@fergusfinn

Copy link
Copy Markdown

What changed

Drops a stray break; left in nvshmemi_ibgda_amo_nonfetch_add after composing the upstream-base stack.

Why

The uccl-project#997 change refactored the per-channel loop into a direct channel-index computation, removing the loop that the trailing break; originally belonged to. uccl-project#998 touched the adjacent body, and the clean textual merge preserved a now-invalid break; outside any loop/switch.

Validation

  • git diff --check origin/upstream-base..HEAD
  • Validated the same patch on Isambard by building the host UCCL EP extension and launching DeepSeek-V4-Flash with host vLLM and UCCL CXI transport; /v1/chat/completions returned OK.

Yueyang Pan and others added 21 commits June 16, 2026 14:23
- add a libfabric CXI transport backend and wire it into the EP proxy runtime
- add generic build switches for USE_LIBFABRIC_CXI and NUM_MAX_NVL_PEERS
- relax internode benchmark assumptions so validation works on non-8-GPU nodes
Add CXI transport support for EP
- remove premature loop exits when posting quiet and barrier commands

- ensure every proxy thread is drained before RDMA buffer reuse
- remove premature loop exits when posting quiet and barrier commands

- ensure every proxy thread is drained before RDMA buffer reuse
[bugfix]: drain all proxy queues during sync
fix(ep): guard CXI libfabric include
- keep the default MAX_NUM_GPUS value at 8

- allow setup.py and Makefile builds to override MAX_NUM_GPUS

- preserve NUM_MAX_NVL_PEERS as a separate EP topology knob
- restore the sync loop exit so BARRIER remains posted through one representative queue

- keep QUIET handling separate from BARRIER semantics for CXI timeout debugging
- widen quiet and barrier wr id storage so FIFO ring bits are not truncated

- keep the existing negative sentinel while preserving high 32-bit queue indices
- post QUIET to every CXI D2H queue so sibling proxy queues are drained

- track the posted queue index and wait on the exact queue for completion
uccl-project#997 refactored the per-channel for-loop into a direct index computation
(removing its trailing break); uccl-project#998 touched adjacent lines so the 3-way
merge kept uccl-project#998's body, resurrecting a break now outside any loop. Invalid
C++ (uccl_ibgda.cuh: 'break may only be used within a loop or switch').
Semantic resolution of the uccl-project#997+uccl-project#998 compose that the clean textual merge
missed.
@fergusfinn
fergusfinn marked this pull request as ready for review June 24, 2026 08:11
@fergusfinn fergusfinn closed this Jul 3, 2026
@fergusfinn
fergusfinn deleted the fix/drop-stray-amo-break branch July 3, 2026 12:22
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.

4 participants