Я новичок в программировании GPGPU, и я работаю с реализацией OpenCL в NVIDIA.
Мой вопрос заключался в том, как вычислить предел устройства GPU (в количестве потоков).
Из того, что я понял, существует несколько рабочих групп (эквивалент блоков в CUDA), которые содержат ряд рабочих элементов (~ cuda thread).
-
Как получить количество рабочей группы, присутствующей на моей карте (и которая может работать одновременно), и количество рабочих элементов, присутствующих в одной рабочей группе?
-
К чему соответствует CL_DEVICE_MAX_COMPUTE_UNITS?
Спецификация спецификации khronos ( "Число параллельных вычислительных ядер на устройстве OpenCL" ). В чем разница с ядром CUDA, указанным в спецификации моей графической карты. В моем случае openCL дает 14, а мой GeForce 8800 GT имеет 112 ячеек, основанных на веб-сайте NVIDIA. -
Соответствует ли CL_DEVICE_MAX_WORK_GROUP_SIZE (512 в моем случае) общее количество рабочих элементов, заданных определенной рабочей группе, или количество рабочих элементов, которые могут работать одновременно в рабочей группе?
Любые предложения будут чрезвычайно оценены.