求教CUDA中SP和线程的关系

aleyuan 2012-12-03 11:11:33
新入手CUDA,有些不明白,请大家指教
我看书上是这么写的
“一个block会被分配到同一个SM上”
“一个SP会处理一个线程”(当然应该不是指独占的)
以我的GTX560Ti为例
有8个SM384个核心,算一下应该是一个SM有43个SP
对于一个wrap是32个线程来说,43这个数字是不是有点尴尬??
一个warp同时执行是不是要占用32个SP?那剩下11个SP高不成低不就的怎么办?

是不是理解错了。。。
...全文
384 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
aleyuan 2012-12-04
  • 打赏
  • 举报
回复
引用 1 楼 linxxx3 的回复:
除法算错了吧,一个SM是48个SP,调度是基于半个warp,即16线程,所以同时执行的是48线程,3个half-warp
额。。。丢死人了,那再问下,一个SM最多可以有8个block,那是这些block的wrap会以half-warp为单位抢占SP么?
linxxx3 2012-12-04
  • 打赏
  • 举报
回复
除法算错了吧,一个SM是48个SP,调度是基于半个warp,即16线程,所以同时执行的是48线程,3个half-warp
linxxx3 2012-12-04
  • 打赏
  • 举报
回复
后面一句的回答是yes,不过这种细节对编程几乎没有影响,而且也与前半句“一个SM最多可以有8个block”没有什么关系,这个纯粹是显卡计算能力的限制。所以乱猜是不好的,认真读官方文档吧

353

社区成员

发帖
与我相关
我的任务
社区描述
CUDA高性能计算讨论
社区管理员
  • CUDA高性能计算讨论社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧