Skip to content

Support Apple RDMA in layer parallel mode - #715

Draft
ryan5rdx wants to merge 1 commit into
antirez:mainfrom
ryan5rdx:apple-rdma-pp
Draft

Support Apple RDMA in layer parallel mode#715
ryan5rdx wants to merge 1 commit into
antirez:mainfrom
ryan5rdx:apple-rdma-pp

Conversation

@ryan5rdx

@ryan5rdx ryan5rdx commented Aug 6, 2026

Copy link
Copy Markdown

Supporting RDMA layer parallel mode:

  • Reused what we can from the existing TP RDMA logic
  • added a new --dist-rdma-adj-devices argument for passing connected nodes in a chain (for eventual ring, maybe mesh topology support)
  • Ensured pipelined prefill still works (verified, avg 711 t/s 80000 prefill on 3x m3 ultra)
  • improved tg/s vs tcp, (verified, 24t/s 2048tg @ 0, 21.5 @50k, 2x and 3x M3 Ultra, more nodes don't appear to degrade tg much after the 2nd)

@ryan5rdx ryan5rdx changed the title Apple rdma pp Support Apple RDMA in layer parallel mode Aug 6, 2026
Distributed pipeline inference over a UC dual-QP-pair channel (ds4_dist_dchan):
a full-duplex reliable byte stream that replaces the TCP data plane so pipelined
prefill runs over RDMA. Opt in with --dist-transport rdma; --dist-rdma-adj-devices
selects the local device per neighbour (a bare name for a routable fabric, or a
peerhost=device map for point-to-point Thunderbolt links).

librdma is loaded at runtime and the link bring-up (device/GID discovery, UC
INIT->RTR->RTS) is shared with the tensor-parallel path in ds4_rdma_verbs; off
Apple the RDMA files compile to TCP-only stubs. See Apple TN3205.
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