#cuda
#cuda
Вопрос:
Может ли кто-нибудь четко простыми словами объяснить блоки 2D и 3D потоков? 1D блок — это просто группа потоков, верно. Итак, что такое 2D блок потоков?
Ответ №1:
Все потоки в CUDA имеют трехмерные индексы. Встроенная переменная threadIdx
имеет три члена, threadIdx.x, threadIdx.y and threadIdx.z
.
2D блок потоков — это просто группа потоков с двумерной схемой индексации. Аналогично, 3D блок потоков представляет собой группу потоков с трехмерной схемой индексации.
С другой стороны, 1D блок потоков является частным случаем 3D блока потоков, где два измерения равны единице, а 2D блок потоков является частным случаем, когда одно из измерений равно единице.
Все это четко обсуждается в первом разделе руководства по программированию на CUDA, если вы хотите его прочитать.