-
Notifications
You must be signed in to change notification settings - Fork 19
[svm][SYCL] In-order queue and native commands#101
[svm][SYCL] In-order queue and native commands#101rafbiels wants to merge 2 commits intooneapi-src:mainfrom
Conversation
Improve SYCL performance on CUDA and HIP backends with the two changes below. There is no functional change for Intel backends.
1. Add CMake option to use in-order queue
Add the queue properties in_order and, if available, discard_events. The addition is steered by a CMake build option IN_ORDER_QUEUE. Set the default value to ON for NVIDIA and AMD backends and keep as OFF for other backends. The in-order queue corresponds more directly to how the CUDA/HIP variants of the benchmark are written since they use the default stream.
2. Use extensions to submit native commands when available
Use the wrapper functions from (added in #95) to call either host_task or native command extensions when available. This improves performance with CUDA and HIP backends.
Delete local copies of the SYCL.(h|cpp) files which were not used in the benchmark and clashed with the one used in this PR.
The addition is steered by a CMake build option IN_ORDER_QUEUE.
Set the default value to ON for NVIDIA and AMD backends and keep
as OFF for other backends.
to call either host_task or native command extensions when available.
This improves performance with CUDA and HIP backends.
Delete local copies of the SYCL.(h|cpp) files which were not used
in the benchmark.