Skip to content

[SYCL][Graph] Bump UR commit to OpenCL kernel update #12724

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Apr 24, 2024

Conversation

EwanC
Copy link
Contributor

@EwanC EwanC commented Feb 15, 2024

Test the UR commit that enables updating kernel commands in a command-buffer in the OpenCL adapter oneapi-src/unified-runtime#1358

@EwanC EwanC force-pushed the ewan/opencl_update_ur_bump branch from bed00de to a5e4e89 Compare February 15, 2024 12:22
@EwanC EwanC force-pushed the ewan/opencl_update_ur_bump branch from a5e4e89 to feef724 Compare February 15, 2024 13:10
@EwanC EwanC force-pushed the ewan/opencl_update_ur_bump branch from feef724 to 952e167 Compare February 15, 2024 17:03
@EwanC EwanC force-pushed the ewan/opencl_update_ur_bump branch from 952e167 to ac1eee4 Compare February 15, 2024 18:15
@EwanC EwanC force-pushed the ewan/opencl_update_ur_bump branch from ac1eee4 to 3ee3b8a Compare February 22, 2024 15:55
@EwanC EwanC force-pushed the ewan/opencl_update_ur_bump branch from 3ee3b8a to 96fce7b Compare February 23, 2024 09:20
EwanC added a commit to Bensuo/unified-runtime that referenced this pull request Feb 27, 2024
Implement the API for updating the kernel commands in a command-buffer
defined by oneapi-src#1089 for
the OpenCL adapter.

However, the following changes to the UR kernel update API have been
made based on implementation experience:

1. Forbid updating the work-dim of the kernel, see KhronosGroup/OpenCL-Docs#1057
2. Remove struct fields to update exec info, after [DPC++ implementation
   prototype](intel/llvm#12840) shows this isn't
   needed.

This adapter implementation depends on support for the
[cl_khr_command_buffer_mutable_dispatch](https://registry.khronos.org/OpenCL/specs/3.0-unified/html/OpenCL_Ext.html#cl_khr_command_buffer_mutable_dispatch)
extension.

Tested on Intel GPU/CPUs OpenCL implementations with the
[command-buffer emulation
layer](https://github.com/bashbaug/SimpleOpenCLSamples/tree/main/layers/10_cmdbufemu).

```bash
$ OPENCL_LAYERS=<path/to/SimpleOpenCLSamples/build/layers/10_cmdbufemu/libCmdBufEmu.so> ./bin/test-exp_command_buffer --platform="Intel(R) OpenCL Graphics"
```

DPC++ PR intel/llvm#12724
EwanC added a commit to Bensuo/unified-runtime that referenced this pull request Mar 14, 2024
Implement the API for updating the kernel commands in a command-buffer
defined by oneapi-src#1089 for
the OpenCL adapter.

However, the following changes to the UR kernel update API have been
made based on implementation experience:

1. Forbid updating the work-dim of the kernel, see KhronosGroup/OpenCL-Docs#1057
2. Remove struct fields to update exec info, after [DPC++ implementation
   prototype](intel/llvm#12840) shows this isn't
   needed.
3. Forbid changing the local work size from user to impl defined and
   vice-versa. See discussion in [L0 implementation
PR](oneapi-src#1353 (comment)).

This adapter implementation depends on support for the
[cl_khr_command_buffer_mutable_dispatch](https://registry.khronos.org/OpenCL/specs/3.0-unified/html/OpenCL_Ext.html#cl_khr_command_buffer_mutable_dispatch)
extension.

Tested on Intel GPU/CPUs OpenCL implementations with the
[command-buffer emulation
layer](https://github.com/bashbaug/SimpleOpenCLSamples/tree/main/layers/10_cmdbufemu).

```bash
$ OPENCL_LAYERS=<path/to/SimpleOpenCLSamples/build/layers/10_cmdbufemu/libCmdBufEmu.so> ./bin/test-exp_command_buffer --platform="Intel(R) OpenCL Graphics"
```

DPC++ PR intel/llvm#12724
@EwanC EwanC force-pushed the ewan/opencl_update_ur_bump branch from 96fce7b to 011dfc3 Compare March 15, 2024 08:59
@EwanC EwanC temporarily deployed to WindowsCILock March 15, 2024 08:59 — with GitHub Actions Inactive
@EwanC EwanC temporarily deployed to WindowsCILock March 15, 2024 09:20 — with GitHub Actions Inactive
EwanC added a commit to Bensuo/unified-runtime that referenced this pull request Mar 25, 2024
Implement the API for updating the kernel commands in a command-buffer
defined by oneapi-src#1089 for
the OpenCL adapter.

However, the following changes to the UR kernel update API have been
made based on implementation experience:

1. Forbid updating the work-dim of the kernel, see KhronosGroup/OpenCL-Docs#1057
2. Remove struct fields to update exec info, after [DPC++ implementation
   prototype](intel/llvm#12840) shows this isn't
   needed.
3. Forbid changing the local work size from user to impl defined and
   vice-versa. See discussion in [L0 implementation
PR](oneapi-src#1353 (comment)).

This adapter implementation depends on support for the
[cl_khr_command_buffer_mutable_dispatch](https://registry.khronos.org/OpenCL/specs/3.0-unified/html/OpenCL_Ext.html#cl_khr_command_buffer_mutable_dispatch)
extension.

Tested on Intel GPU/CPUs OpenCL implementations with the
[command-buffer emulation
layer](https://github.com/bashbaug/SimpleOpenCLSamples/tree/main/layers/10_cmdbufemu).

```bash
$ OPENCL_LAYERS=<path/to/SimpleOpenCLSamples/build/layers/10_cmdbufemu/libCmdBufEmu.so> ./bin/test-exp_command_buffer --platform="Intel(R) OpenCL Graphics"
```

DPC++ PR intel/llvm#12724
@EwanC EwanC force-pushed the ewan/opencl_update_ur_bump branch from 011dfc3 to 2104f6b Compare March 25, 2024 09:49
@EwanC EwanC force-pushed the ewan/opencl_update_ur_bump branch from 2104f6b to f42df41 Compare March 25, 2024 10:02
@EwanC EwanC temporarily deployed to WindowsCILock March 25, 2024 10:02 — with GitHub Actions Inactive
@EwanC EwanC temporarily deployed to WindowsCILock March 25, 2024 10:28 — with GitHub Actions Inactive
@EwanC EwanC temporarily deployed to WindowsCILock April 23, 2024 04:22 — with GitHub Actions Inactive
@EwanC EwanC temporarily deployed to WindowsCILock April 23, 2024 04:42 — with GitHub Actions Inactive
@EwanC EwanC force-pushed the ewan/opencl_update_ur_bump branch from 28ff63a to d081ff0 Compare April 23, 2024 10:01
@EwanC EwanC force-pushed the ewan/opencl_update_ur_bump branch from d081ff0 to 84909c0 Compare April 23, 2024 10:38
@EwanC EwanC marked this pull request as ready for review April 23, 2024 10:45
@EwanC EwanC requested review from a team as code owners April 23, 2024 10:45
@EwanC EwanC temporarily deployed to WindowsCILock April 23, 2024 11:22 — with GitHub Actions Inactive
@EwanC EwanC force-pushed the ewan/opencl_update_ur_bump branch from 84909c0 to f6765d0 Compare April 23, 2024 12:28
@EwanC EwanC temporarily deployed to WindowsCILock April 23, 2024 12:29 — with GitHub Actions Inactive
@EwanC EwanC temporarily deployed to WindowsCILock April 23, 2024 12:49 — with GitHub Actions Inactive
@EwanC EwanC force-pushed the ewan/opencl_update_ur_bump branch from f6765d0 to 28c1972 Compare April 23, 2024 13:43
@EwanC EwanC temporarily deployed to WindowsCILock April 23, 2024 13:43 — with GitHub Actions Inactive
@EwanC EwanC force-pushed the ewan/opencl_update_ur_bump branch from 28c1972 to de62f57 Compare April 23, 2024 14:30
@EwanC EwanC temporarily deployed to WindowsCILock April 23, 2024 14:35 — with GitHub Actions Inactive
Test the UR commit that enables updating kernel commands
in a command-buffer in the OpenCL adapter.
@EwanC EwanC force-pushed the ewan/opencl_update_ur_bump branch from c076579 to de92ea2 Compare April 23, 2024 15:20
@EwanC EwanC temporarily deployed to WindowsCILock April 23, 2024 15:41 — with GitHub Actions Inactive
@EwanC EwanC temporarily deployed to WindowsCILock April 23, 2024 16:14 — with GitHub Actions Inactive
@kbenzie
Copy link
Contributor

kbenzie commented Apr 23, 2024

@intel/llvm-gatekeepers please merge

@EwanC
Copy link
Contributor Author

EwanC commented Apr 24, 2024

ping @intel/llvm-gatekeepers for merging, this UR bump also includes a Jenkins/Precommit fix that could unblock other PRs

@sommerlukas sommerlukas merged commit 719207d into intel:sycl Apr 24, 2024
13 checks passed
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.

4 participants