You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[SYCL] Fix wrong except. raising for ALLOWLIST (#2739)
This patch fixes the following situation:
1. User set
* SYCL_DEVICE_ALLOWLIST=DeviceName:{{DEV_NAME}},DriverVersion:{{X.Y.Z}}
* SYCL_DEVICE_TYPE=GPU
* SYCL_BE=PI_OPENCL // no effect
2. Machine has
* OpenCL GPU device with name DEV_NAME and driver version
X.Y.Z
* Level Zero device with name DEV_NAME and driver version A.B.C
User expects that OpenCL GPU device will be selected but instead got
cl::sycl::runtime_error Requested SYCL device not found -1
(CL_DEVICE_NOT_FOUND).
Since GPU driver 20.43.18277, OpenCL GPU and Level Zero device names are
the same. So, DPC++ RT checks OpenCL GPU device first - everything is
ok, then checks Level Zero device, and throws the exception above.
This patch changes behavior - instead of raising exception in case of
device name == device name in SYCL_DEVICE_ALLOWLIST and driver version
!= driver version in SYCL_DEVICE_ALLOWLIST - now DPC++ raise an
exception
in case none devices were selected based on a value from
SYCL_DEVICE_ALLOWLIST.
Regression test: LIT test config/select_device.cpp with GPU driver
20.43.18277.
0 commit comments