class sycl_cuda_backend
Declaration
class sycl_cuda_backend : public sycl_backend { /* full declaration omitted */ };
Description
CUDA specialized implementation of sycl_backend
that uses native CUDA operations for 2D / 3D copies.
Inherits from: sycl_backend
Member Variables
Member Function Overview
- enqueue_device_copy(device_id device, size_t device_lane, const void * source_base, void * dest_base, const box<3> & source_box, const box<3> & dest_box, const region<3> & copy_region, size_t elem_size) → async_event
- sycl_cuda_backend(const std::vector<sycl::device> & devices, bool enable_profiling)
Inherited from sycl_backend:
- public check_async_errors
- public debug_alloc
- public debug_free
- public enqueue_device_alloc
- public enqueue_device_free
- public enqueue_device_kernel
- public enqueue_host_alloc
- public enqueue_host_copy
- public enqueue_host_free
- public enqueue_host_task
- public get_system_info
- public init
- public operator=
- public operator=
- protected get_device_queue
- protected get_system_info
- protected is_profiling_enabled
Inherited from backend:
- public check_async_errors
- public debug_alloc
- public debug_free
- public enqueue_device_alloc
- public enqueue_device_copy
- public enqueue_device_free
- public enqueue_device_kernel
- public enqueue_host_alloc
- public enqueue_host_copy
- public enqueue_host_free
- public enqueue_host_task
- public get_system_info
- public init
- public operator=
- public operator=
Member Functions
¶async_event enqueue_device_copy(
device_id device,
size_t device_lane,
const void* source_base,
void* dest_base,
const box<3>& source_box,
const box<3>& dest_box,
const region<3>& copy_region,
size_t elem_size)
async_event enqueue_device_copy(
device_id device,
size_t device_lane,
const void* source_base,
void* dest_base,
const box<3>& source_box,
const box<3>& dest_box,
const region<3>& copy_region,
size_t elem_size)
Description
Enqueues an n-dimensional copy between two device-accessible allocations (at least one device-native). The operation will complete in-order with respect to any other asynchronous device operation on device
and device_lane
.
Parameters
¶sycl_cuda_backend(
const std::vector<sycl::device>& devices,
bool enable_profiling)
sycl_cuda_backend(
const std::vector<sycl::device>& devices,
bool enable_profiling)
Parameters
- const std::vector<sycl::device>& devices
- bool enable_profiling