既然block中线程被组织成warp,那么我们只需考虑block的数量是否是32的倍数即可,还要劳心劳力设计block的维度有何意义?
大家帮忙解答一下菜鸟问题?
那需要多少个32的倍数啦?
我觉得这主要是方便使用!
如果我定义block(256,1) ,和block(16,16) 运行上有什么区别吗?
如果用一维索引,没有区别,如果用二维索引,就有区别!
[
请问,有比较详细的资料可以看么?版主可否解释得详细点,怎么个区别呢?
可以参考编程指南。
具体的区别不太好说,这样说吧:使用一维索引的话,就算定义的是二维的block,也得取得它一维代表的索引;如果使用的是二维的索引,那么,对于一维的block你可能要用除或者模余来获得二维的索引,直接采用二维的索引没有这问题!不知我说明白没?
我觉得还是有点区别吧,block是对程序员显式的,warp是隐式的吧
如果你遇到的问题是二维的,就可以用二维的,这样就不用地址转换了。