int x = threadIdx.x + blockIdx.x * blockDim.x;
int y = threadIdx.y + blockIdx.y * blockDim.y;
int offset = x + y * blockDim.x * gridDim.x;
比如线程格(12, 8)中的线程块(3, 5)处索引;
3线程 + 12线程块 * 16线程/线程块 = 195个线程在其左边
5线程 + 8线程块 * 16线程/线程块 = 133个线程在其上边
offset = 195个在左边的线程+133*如图每一行的线程总数
blockDim.x每个线程块中的线程数量
gridDim.x线程格中线程块的数量
三维同理拓展。