- CLHandleType
- CLGetInfoInteger
- CLGetInfoString
- CLContextCreate
- CLContextFree
- CLGetDeviceInfo
- CLProgramCreate
- CLProgramFree
- CLKernelCreate
- CLKernelFree
- CLSetKernelArg
- CLSetKernelArgMem
- CLSetKernelArgMemLocal
- CLBufferCreate
- CLBufferFree
- CLBufferWrite
- CLBufferRead
- CLExecute
- CLExecutionStatus
CLGetInfoInteger
Возвращает значение целочисленного свойства для OpenCL-объекта или устройства.
long CLGetInfoInteger(
|
Параметры
handle
[in] Хендл на объект OpenCL или номер OpenCL устройства. Нумерация OpenCL устройств начинается с нуля.
prop
[in] Тип запрашиваемого свойства из перечисления ENUM_OPENCL_PROPERTY_INTEGER, значение которого нужно получить.
Возвращаемое значение
Значение указанного свойства при успешном выполнении или -1 в случае ошибки. Для получения информации об ошибке используйте функцию GetLastError().
Идентификатор |
Описание |
Тип |
---|---|---|
CL_DEVICE_COUNT |
Количество устройств с поддержкой OpenCL. Для этого свойства не требуется указание первого параметра, то есть можно передать нулевое значение для параметра handle. |
int |
CL_DEVICE_TYPE |
Тип устройства |
|
CL_DEVICE_VENDOR_ID |
Уникальный идентификатор производителя |
uint |
CL_DEVICE_MAX_COMPUTE_UNITS |
Количество параллельных вычисляемых задач в устройстве OpenCL. Одна рабочая группа выполняет одну вычислительную задачу. Минимальное значение равно 1 |
uint |
CL_DEVICE_MAX_CLOCK_FREQUENCY |
Максимальная установленная частота устройства в МГц. |
uint |
CL_DEVICE_GLOBAL_MEM_SIZE |
Размер глобальной памяти устройства в байтах |
ulong |
CL_DEVICE_LOCAL_MEM_SIZE |
Размер локальной памяти обрабатываемых данных (сцены) в байтах |
uint |
CL_BUFFER_SIZE |
Реальный размер буфера OpenCL в байтах |
ulong |
CL_DEVICE_MAX_WORK_GROUP_SIZE |
Общее количество локальных рабочих групп доступных для OpenCL устройства. |
ulong |
CL_KERNEL_WORK_GROUP_SIZE |
Общее количество локальных рабочих групп, доступных для OpenCL программы. |
ulong |
CL_KERNEL_LOCAL_MEM_SIZE |
Размер локальной памяти в байтах, которую использует OpenCL программа для всех параллельных задач в группе. Используйте CL_DEVICE_LOCAL_MEM_SIZE для получения доступного максимума |
ulong |
CL_KERNEL_PRIVATE_MEM_SIZE |
Минимальный размер приватной памяти в байтах, используемый каждой задачей в кернеле OpenCL программы. |
ulong |
CL_LAST_ERROR |
Значение последней OpenCL ошибки |
int |
Перечисление ENUM_CL_DEVICE_TYPE содержит возможные типы устройств с поддержкой OpenCL. Получить тип устройства можно по его номеру или хэндлу объекта OpenCL с помощью вызова CLGetInfoInteger(handle_or_deviceN, CL_DEVICE_TYPE).
Идентификатор |
Описание |
---|---|
CL_DEVICE_ACCELERATOR |
Специализированный OpenCL ускоритель (например, IBM CELL Blade). |
CL_DEVICE_CPU |
Использование центрального процессора компьютера в качестве OpenCL устройства. Центральный процессор может иметь одно или более вычислительных ядер. |
CL_DEVICE_GPU |
OpenCL устройство на основе видеокарты. |
CL_DEVICE_DEFAULT |
OpenCL устройство по умолчанию. Устройством по умолчанию не может являться CL_DEVICE_TYPE_CUSTOM устройство. |
CL_DEVICE_CUSTOM |
Специализированные ускорители, которые не поддерживают программы на OpenCL C. |
Пример:
void OnStart()
|