[Bugfix] Include device index in compile cache paths (#38962)

Signed-off-by: Neil Schemenauer <nas@arctrix.com> Signed-off-by: Tyler Michael Smith <tlrmchlsmth@gmail.com> Co-authored-by: Tyler Michael Smith <tlrmchlsmth@gmail.com>

Neil Schemenauer committed Aug 21, 2026 at 09:07 UTC 6dcc5d7caeffa7f69239153b171249e867ca6050
2 files changed +6 -2
vllm/compilation/backends.py
+4 -1
@@ -1074,7 +1074,10 @@ class VllmBackend:
1074 self.compilation_config.cache_dir = cache_dir
1075 rank = vllm_config.parallel_config.rank
1076 dp_rank = vllm_config.parallel_config.data_parallel_index
1077 - local_cache_dir = os.path.join(cache_dir, f"rank_{rank}_{dp_rank}", self.prefix)
1077 + dev = torch.accelerator.current_device_index()
1078 + local_cache_dir = os.path.join(
1079 + cache_dir, f"rank_{rank}_{dp_rank}_dev{dev}", self.prefix
1080 + )
1081 os.makedirs(local_cache_dir, exist_ok=True)
1082 self.compilation_config.local_cache_dir = local_cache_dir
1083
vllm/compilation/decorators.py
+2 -1
@@ -559,7 +559,8 @@ def _support_torch_compile(
559
560 rank = self.vllm_config.parallel_config.rank
561 dp_rank = self.vllm_config.parallel_config.data_parallel_index
562 - cache_dir = os.path.join(cache_dir, f"rank_{rank}_{dp_rank}")
562 + dev = torch.accelerator.current_device_index()
563 + cache_dir = os.path.join(cache_dir, f"rank_{rank}_{dp_rank}_dev{dev}")
564 aot_compilation_path = os.path.join(cache_dir, "model")
565 if not envs.VLLM_DISABLE_COMPILE_CACHE:
566 loaded_fn = _try_load_aot_compiled_fn(self, aot_compilation_path)