-
Notifications
You must be signed in to change notification settings - Fork 794
[SYCL][L0] Fix piEnqueueEventsWaitWithBarrier for L0 #6359
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
Conversation
When calling piEnqueueEventsWaitWithBarrier while using the level zero backend, the barrier is only inserted into an available command list. However, this leaves other command lists unaffected. This commit fixes this unexpected behavior by making later command-lists insert a barrier on events from piEnqueueEventsWaitWithBarrier until they finish. The resulting event will be either the result of a single barrier, if events were passed to piEnqueueEventsWaitWithBarrier, or a wait on generic barriers on all queues if no events were passed to piEnqueueEventsWaitWithBarrier. Signed-off-by: Larsen, Steffen <steffen.larsen@intel.com>
Signed-off-by: Larsen, Steffen <steffen.larsen@intel.com>
Signed-off-by: Larsen, Steffen <steffen.larsen@intel.com>
Signed-off-by: Larsen, Steffen <steffen.larsen@intel.com>
The level zero backend had a bug that caused barriers to not correctly apply barriers to the entire queue. This is fixed with intel/llvm#6359 and SYCL/Regression/barrier_with_work.cpp is added as a regression test for barriers with active work. Signed-off-by: Larsen, Steffen <steffen.larsen@intel.com>
/verify with intel/llvm-test-suite#1067 |
Signed-off-by: Larsen, Steffen <steffen.larsen@intel.com>
Signed-off-by: Larsen, Steffen <steffen.larsen@intel.com>
Signed-off-by: Larsen, Steffen <steffen.larsen@intel.com>
Signed-off-by: Larsen, Steffen <steffen.larsen@intel.com>
Signed-off-by: Larsen, Steffen <steffen.larsen@intel.com>
Signed-off-by: Larsen, Steffen <steffen.larsen@intel.com>
Have you seen the failing testing? |
Yes. One was caused by the changes using the wrong argument for batching. The remaining issue I will need to debug further. |
Signed-off-by: Larsen, Steffen <steffen.larsen@intel.com>
/verify with intel/llvm-test-suite#1067 |
Documentation build failure is a known problem. @v-klochkov - Can you confirm? |
It is known in our internal workspaces, but hasn't been seen before in intel/llvm workspace. Did we have some pulldown from llvm.org to intel/llvm recently? |
@v-klochkov, it was merged yesterday: #6358 |
Ok, thank you. I uploaded the fix for doc: #6417 |
/verify with intel/llvm-test-suite#1067 |
The level zero backend had a bug that caused barriers to not correctly apply barriers to the entire queue. This is fixed with intel/llvm#6359 and SYCL/Regression/barrier_with_work.cpp is added as a regression test for barriers with active work. Signed-off-by: Larsen, Steffen <steffen.larsen@intel.com>
…test-suite#1067) The level zero backend had a bug that caused barriers to not correctly apply barriers to the entire queue. This is fixed with intel#6359 and SYCL/Regression/barrier_with_work.cpp is added as a regression test for barriers with active work. Signed-off-by: Larsen, Steffen <steffen.larsen@intel.com>
When calling
piEnqueueEventsWaitWithBarrier
while using the level zero backend, the barrier is only inserted into an available command list. However, this leaves other command lists unaffected.This commit fixes this unexpected behavior by making later command-lists insert a barrier on events from
piEnqueueEventsWaitWithBarrier
until they finish.The resulting event will be either the result of a single barrier, if events were passed to
piEnqueueEventsWaitWithBarrier
, or a wait on generic barriers on all queues if no events were passed topiEnqueueEventsWaitWithBarrier
.