请问线程块的大小和块内线程数目取多少才能充分发挥GPU的性能

[复制链接]
查看11 | 回复1 | 2011-6-7 23:11:00 | 显示全部楼层 |阅读模式
是不是线程块的大小为GPU核心数目的2倍以上,块内线程数目是16的整数倍且大于64是比较好的选择
回复

使用道具 举报

千问 | 2011-6-7 23:11:00 | 显示全部楼层
楼主您好:
关于您的"是不是线程块的大小为GPU核心数目的2倍以上"的看法, 我的意见是:
(1)Block Size和SM的数目的2倍没有任何关系. 例如, 一般人常用的Block Size, 并非需要在GTX460(7 SM)上就一定是GT430(2 SM)上的3.5倍.
(2)由于硬件限制每个SM上只能同时驻留8个blocks. 我建议在支持最大驻留线程数量为1536 Threads per SM的fermi硬件上, 不要使用<192 threads的block size, 否则您无法达到1的occupancy, 也就是说, 您的一个SM上可能没有足够的warps用来切换, 以满足掩盖global访问延迟等问题.
祝您工作快乐!
[ 本帖最后由 悠闲的小猫 于 2011-6-8 12:56 编辑 ]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行