Personal / community image. Maintained by @rahulunair for personal experimentation on Intel Arc Pro B70. Not an official Intel image and not affiliated with, endorsed by, or supported by Intel Corporation, the vLLM project, or PyTorch. Provided as-is. For production use refer to PyTorch's official XPU install instructions and Intel's official containers.
PyTorch + pytorch-triton-xpu on top of rahulunair/xpu:latest-base. Reusable foundation for any XPU LLM-serving project (vLLM, SGLang, …) — FROM rahulunair/torch:latest-xpu and skip rebuilding the full oneAPI + GPU userspace stack underneath.
Inherits everything from rahulunair/xpu:*-base, plus:
| Component | Source | Installed |
|---|---|---|
| PyTorch (XPU build) | pip install --index-url https://download.pytorch.org/whl/xpu | {{TORCH}} |
| pytorch-triton-xpu | same index | {{TRITON}} |
| torchvision, torchaudio (XPU) | same index | matching torch |
The pip wheel name pytorch-triton-xpu ships the Python module triton. Inside the image, import triton resolves to that wheel (verified at build time with from triton._C.libtriton import intel).
Three things need to match for the XPU stack to work end-to-end. This image is built so they do:
[ vllm-xpu-kernels 0.1.7 ] builds against
↓
[ torch 2.11.0+xpu ] has DT_NEEDED libsycl.so.8 and uses urKernelSetArgValue@LIBUR_LOADER_0.12
↓
[ Intel oneAPI 2025.3.x ] ships libsycl.so.8 and the matching libur_loader
↓
[ rahulunair/xpu:latest-base ]
If any link in this chain is bumped, the chain breaks. PyTorch nightly's XPU wheel (2.13.0.dev*+xpu) currently fails to load against oneAPI 2026.0 (libsycl.so.9, no urKernelSetArgValue). vllm-xpu-kernels source code references torch 2.11's torch::Library::_def symbol which torch 2.13 removed, so source-building from main against torch 2.13 also fails. This image therefore stays on the stable triple (kernels 0.1.7 ↔ torch 2.11 ↔ oneAPI 2025.3), and the pin advances when all three upstream components have releases for the same newer ABI.
docker run --rm --privileged --device /dev/dri \
-e ZE_AFFINITY_MASK=0 \
rahulunair/torch:latest-xpu \
python3 -c "import torch; print(torch.__version__, torch.xpu.is_available(), torch.xpu.device_count())"
Or run the embedded smoke including @torch.compile codegen via Triton-XPU:
docker run --rm --privileged --device /dev/dri \
rahulunair/torch:latest-xpu run-xpu-tests xpu-torch
That exercises base smokes + torch.xpu.is_available(), eager matmul on Battlemage, @torch.compile (which drives the Triton-XPU → ocloc codegen path).
FROM rahulunair/torch:latest-xpu
RUN pip install --break-system-packages --no-deps your-package
ENTRYPOINT ["your-server"]
--no-deps matters: many XPU-related packages still pin torch versions in their requirements that may differ from this image's installed version. If you need vllm-xpu-kernels alongside your code, install the prebuilt wheel matched to the torch in this image (vllm_xpu_kernels-0.1.7 for torch 2.11.0+xpu).
latest-xpu — most recent green build<torch-version>-xpu — derived from torch.__version__ (e.g. 2.11.0-xpu)github.com/rahulunair/vllm-ci — Dockerfile.bleeding, --target xpu-torch.
Content type
Image
Digest
sha256:b150eb6c5…
Size
5.1 GB
Last updated
6 months ago
docker pull rahulunair/torch:latest-xpu