赞
踩
(1)线程束 warp
(2)线程ID的计算
CUDA的软件架构由网格(Grid)、线程块(block)和线程(thread)组成,相当于把GPU上的计算单元分为若干个网格,每个网格内包含若干个(65535)个线程块,每一个线程块包含若干个(512)个线程。
thread:一个CUDA的并行程序会被以许多个threads来执行。
block:数个thread会被群组成一个block,同一个block中的thread可以同步,也可以通过shared memory通信,
grid:多个block则会在组成grid。
一个grid可以包含多个blocks,blocks的组织方式可以是一维的,二维的或者三维的。block包含多个thread。这些thread的组织方式也可以是一维,二维或者三维。CUDA中每一个线程都有一个唯一标识的id号threadidx,这个id随着Grid和Block的划分方式的不同而变化,这里给出Grid和Block不同划分方式下线程索引id的计算公式。
1、grid一维block一维:
2、grid一维block二维:
3、grid一维block三维:
4、grid二维block一维:
5、grid二维block二维:
6、grid二维block三维:
7、grid三维block一维:
8、grid三维block二维:
9、grid三维block三维:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。