-
Notifications
You must be signed in to change notification settings - Fork 52
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
Add oneDPL for SYCL #442
Add oneDPL for SYCL #442
Conversation
1cb31ee
to
27497b3
Compare
I'm absolutely on board with this effort! Tomorrow I'll look at the exact setup with which oneDPL should be built by hand. But generally I think this is indeed the way to run/start algorithms on device data from the host, when using SYCL. |
Yeah I appreciate that you will look into that. |
This was really my Vietnam... I'll tell you some of the details tomorrow at lunch I guess... Let's hope that the CI build will work as well. |
🤔 I believe we found a bug in oneDPL... (I mean, yet another one. The whole issue with include orders is a serious issue by itself in my mind.) You see, the failure comes from:
(I had to make a Debug build against oneAPI itself, but let's not go into the technical reasons for that...) Generally, we don't want tests to instantiate To test this locally, one can do something like:
This is exactly what I attached a debugger to as well, which lead to the backtrace shown above. Which shows that oneDPL always creates at least one (but likely multiple...) That's not too cool. 😦 It means that an application that uses oneDPL somewhere deep inside itself has no way to gracefully decide during execution that it does not want to use DPL (in case it detects that there's no device that it could use). Let me create bug reports in oneDPL about the two bugs that we found so far... |
8a664df
to
202b51a
Compare
Now included in #689 |
Now depends on #461
As thrust functions doesn't seem to work with SYCL... (#437)
oneDPL is compiled only when SYCL is built
BTW, there is a tons of warnings from my compiler. Maybe my compiler is too old or I am using a wrong version of DPL.