z5253882 发表于 2013-8-1 13:40
但是如果是多次调用核函数的话,那不就变成类似串行的了吗?而且一次只能用一个grid的线程,那max grid d ...
LZ您好:
1:多次调用kernel,那么每个kernel对应的grid确实是一个接着一个执行的。但这又有什么关系呢?你一个grid执行的时候也不是说一个周期全部结果都出来的,线程们也是一批一批执行的。以及这个和效率也没有直接关系。
2:“而且一次只能用一个grid的线程,那max grid dimensions:<63353 63353 63353>不就是没用了吗?”——我和横扫斑竹同样无法理解您的逻辑。
以及,这里面是65535而不是63353;
以及这个数量是和计算能力版本相关的,您使用3.x版本计算能力的显卡可以实现((2^31)-1)*65535*65535大小的grid;
以及这个dimension是按照block数量计算的,实际换算到线程数量还需要乘以每个block内部线程数量的;
以及这个限制不是同时可用的grid数量。
3:我不是夜猫子的,我白天一般也在,但不保证每天每时每刻都在,也不保证周末都在,也不保证每个帖子都能立即回答,也不保证每晚都在。我回帖的时刻是我在的时刻,但反之不成立。
大致如此,供您参考。
祝您好运~ |