CUDA块如何划分为经线?

如果我用一个网格开始我的内核,其网格的尺寸为:

dim3 block_dims(16,16);

现在网格块如何分裂成经线? 这样一个块的前两行是否构成一个变形,或前两列,还是这个任意排序?

假设GPU计算能力为2.0。


线程块内的编号,以便使得threadIdx.x变化最快,然后threadIdx.y第二快改变,和threadIdx.z最慢地变化。 这在功能上与多维数组中的列主要排序相同。 经线按此顺序依次构造。 所以2d块的计算是

unsigned int tid = threadIdx.x + threadIdx.y * blockDim.x;
unsigned int warpid = tid / warpSize;

这在节目指南和PTX指南中均有介绍。

链接地址: http://www.djcxy.com/p/80095.html

上一篇: How are CUDA blocks divided into warps?

下一篇: Attribute Routing not finding area view