Skip to content

Commit a84badf

Browse files
authored
Pass in boostrap port on prefill (#121)
1 parent 2bf7f91 commit a84badf

1 file changed

Lines changed: 6 additions & 2 deletions

File tree

src/srtctl/backends/sglang.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -277,8 +277,12 @@ def build_worker_command(
277277
# Add disaggregation mode for prefill/decode workers (both dynamo and sglang frontend)
278278
if mode != "agg":
279279
cmd.extend(["--disaggregation-mode", mode])
280-
# Bootstrap port only needed for sglang frontend (dynamo handles internally)
281-
if frontend_type == "sglang" and mode == "prefill" and process.bootstrap_port is not None:
280+
# Always pass bootstrap port for prefill workers regardless of frontend type.
281+
# Dynamo does NOT handle this internally — SGLang's CommonKVBootstrapServer
282+
# still runs on every prefill node for KV transfer coordination, and workers
283+
# must register to it. Without an explicit port, the default (8998) collides
284+
# with Dynamo services (etcd/NATS) on the head node, breaking multi-node prefill.
285+
if mode == "prefill" and process.bootstrap_port is not None:
282286
cmd.extend(["--disaggregation-bootstrap-port", str(process.bootstrap_port)])
283287

284288
# Add multi-node coordination flags

0 commit comments

Comments
 (0)