CUDA的执行配置
1.一维
gpu_print[2, 4] (),其中方括号中第一个数字表示整个Grid有多少个Block,方括号中第二个数字表示一个Block有多少个Thread。
占用1个grid,2个block=2个SM,每个block的4个线程同时运行。
idx = cuda.threadIdx.x + cuda.blockIdx.x * cuda.blockDim.x
函数gpu_print[gridDim, blockDim] (),如gpuWork[8, 128] (),启动block8*thread128个线程。
2.二维
在上一篇Mandelbrot set中,
griddim = (32,16) # 32*16=512个block
blockdim = (32, 8) # 32*8=256个thread
mandel_kernel[griddim, blockdim](-2.0, 1.0, -1.0, 1.0, d_image, 20)