Skip to content

Add Intel XPU (Arc GPU) inference support - #1009

Draft
munikera wants to merge 4 commits into
Physical-Intelligence:mainfrom
munikera:add-intel-xpu-inference
Draft

Add Intel XPU (Arc GPU) inference support#1009
munikera wants to merge 4 commits into
Physical-Intelligence:mainfrom
munikera:add-intel-xpu-inference

Conversation

@munikera

@munikera munikera commented Aug 5, 2026

Copy link
Copy Markdown

Summary

Adds inference support for Intel Arc GPUs via the PyTorch XPU backend. Tested on two Intel Arc B70 GPUs (Ubuntu 22.04, xe kernel driver). Achieves ~130 ms/step on pi05_libero.

Changes

  • policy_config.py: auto-detect XPU device in create_trained_policy (falls back to xpu when CUDA is unavailable)
  • pyproject.toml: add xpu dependency group with torch==2.11.0+xpu, torchvision==0.26.0+xpu, triton-xpu==3.7.0 from the PyTorch XPU index; loosen torch==2.7.1 -> torch>=2.7.1 to allow the XPU wheel to satisfy the base constraint
  • docs/xpu.md: end-to-end setup guide covering driver install, dependency setup, checkpoint download/conversion, smoke test, and LIBERO benchmark eval

Note on torch pin

The base torch==2.7.1 pin is loosened to torch>=2.7.1 because uv must satisfy both the base constraint and the XPU extra (torch==2.11.0+xpu) simultaneously. This does
not affect non-XPU installs - uv sync without --group xpu still resolves torch==2.7.1.

Verification

# Install XPU dependencies
uv sync --group xpu

# Verify XPU is detected
uv run python -c "import torch; print(torch.xpu.is_available())"

# Smoke test (requires policy server running)
uv run scripts/serve_policy.py --port 8000 policy:checkpoint \
    --policy.config pi05_libero \
    --policy.dir checkpoints/pi05_libero_pytorch

uv run examples/simple_client/main.py --env LIBERO --num-steps 5

See docs/xpu.md for full setup instructions.

@munikera
munikera marked this pull request as draft August 5, 2026 21:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant