Количество вычислительных блоков, соответствующих количеству рабочих групп
Мне нужно немного разъяснений. Я разрабатываю OpenCL на своем ноутбуке с небольшим графическим процессором NVIDIA (310M). Когда я запрашиваю устройство дляCL_DEVICE_MAX_COMPUTE_UNITS
, результат равен 2. Я прочитал, что количество рабочих групп для запуска ядра должно соответствовать количеству вычислительных единиц (Гетерогенные вычисления с OpenCLГлава 9, с. 186), иначе это потратило бы слишком много глобальной памяти.
Кроме того, чип имеет 16 ядер CUDA (которые соответствуют PE, я полагаю). Значит ли это теоретически, что наиболее эффективная настройка для этого графического процессора, касающаяся глобальной памяти, состоит в том, чтобы иметь две рабочие группы по 16 рабочих элементов в каждой?