最基本的是线程,每一个线程就是我们写的任务代码,即kernel函数,内部可以形成若干个执行的线程。若干个线程组成了block,若干个block组成了grid。具体的数目需要开发者在开发过程确定。
warp是由一定的线程数目组成。
线程组织架构:
(1) 一个kernel具有大量线程
(2)线程被划分为线程块‘blocks’,一个block内部的线程共享‘shared memory’,可以同步‘_syncthreads()’
(3)kernel启动一个‘grid’,包含若干线程块,由用户设定
(4)线程和线程块具有唯一的标识