Skip to content

Enable pd-disaggregation benchmark on Intel XPU#1513

Open
WenjiaoYue wants to merge 1 commit into
llm-d:mainfrom
WenjiaoYue:feat/pd-disaggregation-xpu
Open

Enable pd-disaggregation benchmark on Intel XPU#1513
WenjiaoYue wants to merge 1 commit into
llm-d:mainfrom
WenjiaoYue:feat/pd-disaggregation-xpu

Conversation

@WenjiaoYue

Copy link
Copy Markdown

Enable pd-disaggregation benchmark on Intel XPU.

  • config/scenarios/guides/pd-disaggregation-xpu.yaml: XPU scenario with prefill+decode pools, NixlConnector KV transfer (kv_buffer_device=cpu, UCX_TLS=tcp for Intel GPUs without GPUDirect/cuda_ipc), --enforce-eager, float16, RWO storage for kind, podSecurityContext supplementalGroups for /dev/dri access, Qwen3-0.6B, TP1, prefill replicas:1 + decode replicas:1.
  • config/specification/guides/pd-disaggregation-xpu.yaml.j2: spec pointing at the XPU scenario (mirrors pd-disaggregation.yaml.j2).

Note: depends on the decode/prefill podSecurityContext indent fix in config/templates/jinja/13_ms-values.yaml.j2 from the optimized-baseline-xpu change set.

Add an Intel XPU (gpu.intel.com/xe, classic device plugin) variant of the
pd-disaggregation guide so the prefill/decode-disaggregated scenario runs on
Intel GPUs.

- config/scenarios/guides/pd-disaggregation-xpu.yaml: XPU scenario with
  prefill+decode pools, NixlConnector KV transfer (kv_buffer_device=cpu,
  UCX_TLS=tcp for Intel GPUs without GPUDirect/cuda_ipc), --enforce-eager,
  float16, RWO storage for kind, podSecurityContext supplementalGroups for
  /dev/dri access, Qwen3-0.6B, TP1, prefill replicas:1 + decode replicas:1.
- config/specification/guides/pd-disaggregation-xpu.yaml.j2: spec pointing at
  the XPU scenario (mirrors pd-disaggregation.yaml.j2).

Note: depends on the decode/prefill podSecurityContext indent fix in
config/templates/jinja/13_ms-values.yaml.j2 from the optimized-baseline-xpu
change set.

Signed-off-by: WenjiaoYue <wenjiao.yue@intel.com>
Copilot AI review requested due to automatic review settings June 17, 2026 15:50
@github-actions

Copy link
Copy Markdown
Contributor

Unsigned commits detected! Please sign your commits.

For instructions on how to set up GPG/SSH signing and verify your commits, please see GitHub Documentation.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Enables running the existing P/D disaggregation guide benchmark configuration on Intel XPU (classic gpu.intel.com/xe device plugin) by adding an XPU-specific scenario plus a matching specification entry that points the renderer at that scenario.

Changes:

  • Add a new pd-disaggregation-xpu scenario tuned for Intel XPU (image override, Intel GPU resource, TCP UCX transport, CPU KV buffer device, eager execution, kind-friendly RWO PVCs).
  • Add a new spec template that mirrors the existing pd-disaggregation spec but selects the new XPU scenario file.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
config/specification/guides/pd-disaggregation-xpu.yaml.j2 New renderer spec pointing to the XPU scenario.
config/scenarios/guides/pd-disaggregation-xpu.yaml New Intel XPU P/D disaggregation scenario (resources, vLLM commands, routing, storage, security context).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +146 to +148
podSecurityContext:
supplementalGroups:
- 107
Comment on lines +225 to +229
# Pod-level securityContext. Group 107 = render, for /dev/dri. See the
# prefill note above for why runAsUser/runAsGroup are NOT set here.
podSecurityContext:
supplementalGroups:
- 107
Comment on lines +80 to +83
# ROUTING - NIXL v2 connector drives prefill->decode KV-cache transfer.
# The preprocess init container auto-populates the NIXL side-channel env
# (VLLM_NIXL_*) at pod runtime; we only pin UCX transport to TCP below
# (vllmCommon.ucxTls), which is the XPU-supported NIXL transport.
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.

2 participants