20 inline namespace _V1 {
21 namespace ext::oneapi::cuda {
31 return get_native<backend::ext_oneapi_cuda>(sycl_event) !=
nullptr;
40 inline auto get_native<backend::ext_oneapi_cuda, context>(
const context &C)
46 auto native =
reinterpret_cast<
56 inline backend_return_t<backend::ext_oneapi_cuda, context>
57 interop_handle::get_native_context<backend::ext_oneapi_cuda>()
const {
58 #ifndef __SYCL_DEVICE_ONLY__
59 return std::vector{
reinterpret_cast<CUcontext>(getNativeContext())};
68 inline device make_device<backend::ext_oneapi_cuda>(
71 for (
auto &dev : devs) {
73 BackendObject == get_native<backend::ext_oneapi_cuda>(dev)) {
77 ur_native_handle_t NativeHandle =
78 static_cast<ur_native_handle_t
>(BackendObject);
84 inline event make_event<backend::ext_oneapi_cuda>(
94 inline queue make_queue<backend::ext_oneapi_cuda>(
97 int32_t nativeHandleDesc = 0;
100 nativeHandleDesc, TargetContext,
nullptr,
true,
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.
static std::vector< device > get_devices(info::device_type deviceType=info::device_type::all)
Query available SYCL devices.
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.
Objects of the property_list class are containers for the SYCL properties.
Encapsulates a single SYCL queue which schedules kernels on a SYCL device.
struct CUctx_st * CUcontext
queue make_queue(ur_native_handle_t NativeHandle, int32_t nativeHandleDesc, const context &TargetContext, const device *TargetDevice, bool KeepOwnership, const property_list &PropList, const async_handler &Handler, backend Backend)
event make_event(ur_native_handle_t NativeHandle, const context &TargetContext, backend Backend)
device make_device(ur_native_handle_t NativeHandle)
bool has_native_event(event sycl_event)
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