gridDim:包含x,y,z的結構體
表示網格在x,y,z方向上的尺寸
目前僅能使用二維
對應於執行參數第一個
blockIdx:包含x,y,z的結構體
表示當前線程塊在網格中x,y,z方向上的索引
被限制爲65535
blockDim:包含x,y,z的結構體
表示塊在x,y,z方向上的尺寸
目前僅能使用二維
對應於執行參數第二個
threadIdx:包含x,y,z的結構體
表示當前線程在其鎖在塊中x,y,z方向上的索引
不同型號,限制小於512/1024
dim3 myGridDim(bx,by);
dim3 myBlockDim(tx,ty);
kernal<<<myGridDim,myBlockDim>>>();
則每個線程塊有tx行ty列的線程,
x=threadIdx.x,y=threadIdx.y代表第x行第y列的那個線程;
整個網格有bx行by列的線程塊
blockIdx.x,blockIdx.y代表第x行第y列的那個線程塊;
也就是說
dim3 myGridDim(bx,by);
kernal<<<myGridDim,1>>>()
__global__ kernal()
{
int x = blockIdx.x
///
}