From 23eb7c8fbb7a07d69d10d340db226ee6042a2b02 Mon Sep 17 00:00:00 2001 From: fangyuchu Date: Thu, 11 Jun 2026 23:14:49 +0800 Subject: [PATCH] [Bugfix] Fix NixlEPAll2AllManager's dependency on --enable-elastic-ep to function (#44422) Signed-off-by: fangyuchu Co-authored-by: Tyler Michael Smith --- vllm/distributed/device_communicators/all2all.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/vllm/distributed/device_communicators/all2all.py b/vllm/distributed/device_communicators/all2all.py index fd1c826322c..967ce5d75c3 100644 --- a/vllm/distributed/device_communicators/all2all.py +++ b/vllm/distributed/device_communicators/all2all.py @@ -9,6 +9,7 @@ import torch.distributed as dist import vllm.envs as envs from vllm.distributed import get_dp_group, get_ep_group +from vllm.distributed.utils import StatelessProcessGroup from vllm.forward_context import get_forward_context from vllm.logger import init_logger from vllm.utils.flashinfer import ( @@ -342,7 +343,12 @@ class NixlEPAll2AllManager(All2AllManagerBase): _lock = threading.RLock() def __init__(self, cpu_group, tcp_store_group=None): - assert tcp_store_group is not None + if tcp_store_group is None: + tcp_store_group = StatelessProcessGroup( + rank=cpu_group.rank(), + world_size=cpu_group.size(), + store=dist.PrefixStore("nixl_ep", cpu_group.get_group_store()), + ) super().__init__(cpu_group, tcp_store_group) self.max_num_ep_ranks = envs.VLLM_NIXL_EP_MAX_NUM_RANKS