[Bugfix][XPU] Skip oneCCL warm-up all_reduce when world_size == 1 (#52389)
Signed-off-by: DaeHyun Sung <dhsung@lablup.com>
DaeHyun Sung committed
Aug 24, 2026 at 13:31 UTC
f94666b60d4c58ec0807d22c837cfae322a1dde9
1 file changed
+7
-2
vllm/v1/worker/xpu_worker.py
+7
-2
@@ -100,8 +100,13 @@ class XPUWorker(Worker):
100
current_platform.dist_backend,
101
)
102
103
- # global all_reduce needed for overall oneccl warm up
104
- if torch.distributed.is_xccl_available():
103
+ # oneCCL warm-up; only meaningful for multi-device runs. Requiring it
104
+ # with a single worker breaks platforms where oneCCL cannot enumerate
105
+ # device topology (e.g. paravirtualized GPUs).
106
+ if (
107
+ self.parallel_config.world_size > 1
108
+ and torch.distributed.is_xccl_available()
109
+ ):
110
torch.distributed.all_reduce(torch.zeros(1).xpu())
111
112
if self.use_v2_model_runner: