Skip to content
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

urQueueCreateWithNativeHandle shouldn't allow hDevice to be null #2041

Open
hdelan opened this issue Sep 2, 2024 · 1 comment
Open

urQueueCreateWithNativeHandle shouldn't allow hDevice to be null #2041

hdelan opened this issue Sep 2, 2024 · 1 comment
Milestone

Comments

@hdelan
Copy link
Contributor

hdelan commented Sep 2, 2024

Associating a ur_queue_handle_t with a ur_context_handle_t is sort of meaningless if we are using a multi device context, as the context doesn't tell us which device in the context the queue should be associated with. As such I think we should not allow the hDevice param to be null.

@hdelan hdelan changed the title urQueueCreateWithNativeHandle Shouldn't allow hDevice to be null urQueueCreateWithNativeHandle shouldn't allow hDevice to be null Sep 2, 2024
@aarongreig
Copy link
Contributor

If we do change this it should be a relatively trivial change on the UR side, but it will almost certainly break sycl RT's make_queue implementation https://github.com/intel/llvm/blob/sycl/sycl/include/sycl/backend.hpp#L354 https://github.com/intel/llvm/blob/sycl/sycl/source/backend.cpp#L116 we had a lot of that kind of issue when we ported to UR and turned on the validation layer: sycl loves to pass nullptr to CreateWithNative type entry points - which is probably why null was allowed here in the first place. To my untrained eye it looks like you'd need to do a "get first device in context" thing on the sycl side to remediate, which is really just shuffling the nastiness up a layer rather than doing away with it.

@kbenzie kbenzie added this to the Backlog milestone Sep 16, 2024
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

No branches or pull requests

3 participants