C Specification
To query OpenCL devices corresponding to a Direct3D 11 device or a DXGI device, call the function
// Provided by cl_khr_d3d11_sharing
cl_int clGetDeviceIDsFromD3D11KHR(
cl_platform_id platform,
cl_d3d11_device_source_khr d3d_device_source,
void* d3d_object,
cl_d3d11_device_set_khr d3d_device_set,
cl_uint num_entries,
cl_device_id* devices,
cl_uint* num_devices);
clGetDeviceIDsFromD3D11KHR is provided by the cl_khr_d3d11_sharing extension.
|
Parameters
-
platform refers to the platform ID returned by clGetPlatformIDs.
-
d3d_device_source specifies the type of d3d_object, and must be one of the values shown in the Direct3D 11 Object Types table.
-
d3d_object specifies the object whose corresponding OpenCL devices are being queried. The type of d3d_object must be as specified in the Direct3D 11 Object Types table.
-
d3d_device_set specifies the set of devices to return, and must be one of the values shown in the Direct3D 11 Device Sets table.
-
num_entries is the number of
cl_device_entries that can be added to devices. If devices is notid NULLthen num_entries must be greater than zero. -
devices returns a list of OpenCL devices found. The
cl_device_values returned in devices can be used to identify a specific OpenCL device. If devices isid NULL, this argument is ignored. The number of OpenCL devices returned is the minimum of the value specified by num_entries and the number of OpenCL devices corresponding to d3d_object. -
num_devices returns the number of OpenCL devices available that correspond to d3d_object. If num_devices is
NULL, this argument is ignored.
Description
cl_d3d11_ |
Type of d3d_object |
|---|---|
provided by the |
|
provided by the |
|
cl_d3d11_ |
Devices returned in devices |
|---|---|
provided by the |
The preferred OpenCL devices associated with the specified Direct3D object. |
provided by the |
All OpenCL devices which may interoperate with the specified Direct3D object. Performance of sharing data on these devices may be considerably less than on the preferred devices. |
clGetDeviceIDsFromD3D11KHR returns CL_SUCCESS if the function is
executed successfully.
Otherwise it may return
-
CL_INVALID_if platform is not a valid platform.PLATFORM -
CL_INVALID_if d3d_device_source is not a valid value, d3d_device_set is not a valid value, num_entries is equal to zero and devices is notVALUE NULL, or if both num_devices and devices areNULL. -
CL_DEVICE_if no OpenCL devices that correspond to d3d_object were found.NOT_ FOUND
Document Notes
For more information, see the OpenCL Specification
This page is extracted from the OpenCL Specification. Fixes and changes should be made to the Specification, not directly.