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() |