logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

clGetDeviceIDsFromD3D10KHR - Querying OpenCL Devices Corresponding to Direct3D 10 Devices.

Authors

TheKhronosGroup

Description

       The OpenCL devices corresponding to a Direct3D 10 device may be queried. The OpenCL devices corresponding
       to a DXGI adapter may also be queried. The OpenCL devices corresponding to a Direct3D 10 device will be a
       subset of the OpenCL devices corresponding to the DXGI adapter against which the Direct3D 10 device was
       created.

Errors

       Returns CL_SUCCESS if the function is executed successfully. Otherwise it may return:

       •   CL_INVALID_PLATFORM if platform is not a valid platform.

       •   CL_INVALID_VALUE 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 not NULL, or if both num_devices and devices are NULL.

       •   CL_DEVICE_NOT_FOUND if no OpenCL devices that correspond to d3d_object were found.

Name

       clGetDeviceIDsFromD3D10KHR - Querying OpenCL Devices Corresponding to Direct3D 10 Devices.

       cl_intclGetDeviceIDsFromD3D10KHR(cl_platform_idplatform,cl_d3d10_device_source_khrd3d_device_source,void*d3d_object,cl_d3d10_device_set_khrd3d_device_set,cl_uintnum_entries,cl_device_id*devices,cl_uint*num_devices);

Notes

        1. OpenCL Specification
           page 71, section 9.9.7.1 - Querying OpenCL Devices Corresponding to... 11...

The Khronos Group                                  11/18/2024                         CLGETDEVICEIDSFROMD3(3clc)

Parameters

platform
           Refers to the platform ID returned by clGetPlatformIDs(3clc).

       d3d_device_source
           Specifies the type of d3d_object and may be one of the following:.
           ┌───────────────────────────┬────────────────────┐
           │ cl_d3d_device_source_khrTypeofd3d_object │
           ├───────────────────────────┼────────────────────┤
           │ CL_D3D10_DEVICE_KHRID3D10Device *     │
           ├───────────────────────────┼────────────────────┤
           │ CL_D3D10_DXGI_ADAPTER_KHRIDXGIAdapter *     │
           └───────────────────────────┴────────────────────┘

       d3d_object
           Specifies the object whose corresponding OpenCL devices are being queried. The type of d3d_object
           must be as specified in the table above.

       d3d_device_set
           Specifies the set of devices to return, and must be one of the following:
           ┌────────────────────────────────────┬──────────────────────────────────────┐
           │ cl_d3d_device_set_khrDevicesreturnedindevices          │
           ├────────────────────────────────────┼──────────────────────────────────────┤
           │ CL_PREFERRED_DEVICES_FOR_D3D10_KHR │ The OpenCL devices associated with   │
           │                                    │ the specified Direct3D object.       │
           ├────────────────────────────────────┼──────────────────────────────────────┤
           │ CL_ALL_DEVICES_FOR_D3D10_KHR       │ 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.                   │
           └────────────────────────────────────┴──────────────────────────────────────┘

       num_entries
           The number of cl_device_id entries that can be added to devices. If devices is not NULL, the
           num_entries must be greater than zero.

       devices
           Returns a list of OpenCL devices found. The cl_device_id values returned in devices can be used to
           identify a specific OpenCL device. If devices is NULL, this argument is ignored. The number of OpenCL
           devices returned is the mininum 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.

See Also

cl_khr_d3d10_sharing(3clc), clCreateFromD3D10BufferKHR(3clc), clCreateFromD3D10Texture2DKHR(3clc),
       clCreateFromD3D10Texture3DKHR(3clc), clEnqueueAcquireD3D10ObjectsKHR(3clc),
       clEnqueueReleaseD3D10ObjectsKHR(3clc)

Specification

OpenCLSpecification[1]

See Also