19 namespace ext::oneapi::cuda {
28 if (sycl_event.
get_backend() == backend::ext_oneapi_cuda)
29 return get_native<backend::ext_oneapi_cuda>(sycl_event) !=
nullptr;
38 inline auto get_native<backend::ext_oneapi_cuda, context>(
const context &C)
44 auto native =
reinterpret_cast<
54 inline backend_return_t<backend::ext_oneapi_cuda, context>
55 interop_handle::get_native_context<backend::ext_oneapi_cuda>()
const {
56 #ifndef __SYCL_DEVICE_ONLY__
57 return std::vector{
reinterpret_cast<CUcontext>(getNativeContext())};
66 inline device make_device<backend::ext_oneapi_cuda>(
68 auto devs = device::get_devices(info::device_type::gpu);
69 for (
auto &dev : devs) {
70 if (dev.get_backend() == backend::ext_oneapi_cuda &&
71 BackendObject == get_native<backend::ext_oneapi_cuda>(dev)) {
81 inline event make_event<backend::ext_oneapi_cuda>(
86 backend::ext_oneapi_cuda);
91 inline queue make_queue<backend::ext_oneapi_cuda>(
95 TargetContext,
nullptr,
true, Handler,
96 backend::ext_oneapi_cuda);
The context class represents a SYCL context on which kernel functions may be executed.
The SYCL device class encapsulates a single SYCL device on which kernels may be executed.
An event object can be used to synchronize memory transfers, enqueues of kernels and signaling barrie...
backend get_backend() const noexcept
Returns the backend associated with this platform.
Encapsulates a single SYCL queue which schedules kernels on a SYCL device.
struct CUctx_st * CUcontext
#define __SYCL_INLINE_VER_NAMESPACE(X)
event make_event(pi_native_handle NativeHandle, const context &TargetContext, backend Backend)
device make_device(pi_native_handle NativeHandle)
bool has_native_event(event sycl_event)
queue make_queue(const context &Context, pi_native_handle InteropHandle)
typename backend_traits< Backend >::template return_type< SyclType > backend_return_t
std::function< void(sycl::exception_list)> async_handler
typename backend_traits< Backend >::template input_type< SyclType > backend_input_t
---— Error handling, matching OpenCL plugin semantics.
uintptr_t pi_native_handle