20 namespace level_zero {
21 using namespace detail;
33 const auto &Plugin = pi::getPlugin<backend::ext_oneapi_level_zero>();
38 NativeHandle, PlatformImpl->getHandleRef(), &
PiDevice);
40 return detail::createSyclObjFromImpl<device>(
41 PlatformImpl->getOrMakeDeviceImpl(
PiDevice, PlatformImpl));
49 const auto &Plugin = pi::getPlugin<backend::ext_oneapi_level_zero>();
52 std::vector<pi_device> DeviceHandles;
53 for (
auto Dev : DeviceList) {
57 NativeHandle, DeviceHandles.size(), DeviceHandles.data(), !KeepOwnership,
60 return detail::createSyclObjFromImpl<context>(
77 return detail::createSyclObjFromImpl<program>(
78 std::make_shared<program_impl>(
getSyclObjImpl(Context), NativeHandle));
88 ContextImpl->get_async_handler(),
89 backend::ext_oneapi_level_zero);
97 ContextImpl->get_async_handler(),
98 backend::ext_oneapi_level_zero);
104 return make_queue(Context, NativeHandle,
false);
111 bool KeepOwnership) {
113 backend::ext_oneapi_level_zero);