Skip to content

[SYCL][DOC] Physical memory IPC specification, generic handle struct and related aliases.#21949

Open
slawekptak wants to merge 11 commits intointel:syclfrom
slawekptak:ext_ipc_physical_mem_v3
Open

[SYCL][DOC] Physical memory IPC specification, generic handle struct and related aliases.#21949
slawekptak wants to merge 11 commits intointel:syclfrom
slawekptak:ext_ipc_physical_mem_v3

Conversation

@slawekptak
Copy link
Copy Markdown
Contributor

@slawekptak slawekptak commented May 7, 2026

Introduce the following changes to the extensions specifications:

  • Add IPC support for sycl::ext::oneapi::experimental::physical_mem object (sycl_ext_oneapi_inter_process_communication).
  • Introduce a new handle struct and handle_data_t and handle_data_view_t aliases in the generic sycl::ext::oneapi::experimental::ipc namespace, and use this types for the physical memory IPC. These types will be used for all other IPC related features going forward (sycl_ext_oneapi_inter_process_communication).
  • Add properties argument to the physical_mem constructor (sycl_ext_oneapi_virtual_mem).

@slawekptak slawekptak requested a review from a team as a code owner May 7, 2026 08:41
@slawekptak slawekptak requested a review from Copilot May 7, 2026 08:41
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the sycl_ext_oneapi_inter_process_communication extension specification to generalize IPC handle representation and to specify IPC support for sycl::ext::oneapi::experimental::physical_mem, while also aligning the existing USM IPC text with the new direction.

Changes:

  • Introduces generic IPC handle types under sycl::ext::oneapi::experimental::ipc (handle, handle_data_t, handle_data_view_t).
  • Adds a new “Inter-process exchange of physical memory” section with ipc::physical_memory::{get, open} APIs and the new device aspect.
  • Updates USM IPC documentation to fix examples/calls and explicitly marks ipc_memory::handle as backward-compatibility-only pending an ABI break.

@slawekptak slawekptak marked this pull request as draft May 7, 2026 09:12
@slawekptak slawekptak marked this pull request as ready for review May 7, 2026 09:57
[source]
----
syclext::physical_mem open(const syclext::ipc::handle_data_t &handle_data,
const sycl::context &ctx, const sycl::device &dev)
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.

Just checking ... we don't need numBytes here because that is conveyed through the handle_data?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Yes, I think we can store it in the handle_data either on the SYCL or UR layer.

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.

3 participants