-
Notifications
You must be signed in to change notification settings - Fork 745
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
[SYCL] Make device comparison method to analyze impl not native handles #6880
Conversation
Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova@intel.com>
Could you please add a LIT test that fails without PR and passes with this PR? |
we have test that found this issue: sycl_cts/sycl_link_different_device_for_sycl_link |
@pvchupin - I think there is no any ESIMD specific in this patch, it is purely SYCL/RT. I can only tell that the current fix requires more changes, IMO, because std::unique may keep duplicates. Also, enforcing usage of device::operator== turns into lhs.impl==rhs.impl, where lhs/rhs are shared_ptr<device_impl>, i.e. it is comparison of pointers to device_impl, and I don't know if this is how devices should be compared. |
I was thinking it involves esimd_emulator... |
@v-klochkov and @pvchupin let me to share a bit more details about esimd_emulator participation and operator== validness.
|
Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova@intel.com>
Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova@intel.com>
Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova@intel.com>
Initial issue was sycl::link failure with many devices passed when esimd_emulator backend is enabled.
esimd_emulator does not have getNative method implemented while we checked object equality by comparison of native handles.
It seems to be not fully valid and we need to check it using operator. GetNative implementation for esimd_emulator is not needed.
Signed-off-by: Tikhomirova, Kseniya kseniya.tikhomirova@intel.com