CUDA中确定你显卡的thread和block数

CUDA中确定你显卡的thread和block数

在进行并行计算时, 你的显卡所支持创建的thread数与block数是有限制的, 因此, 需要自己提前确定够用, 再进行计算, 否则, 你需要改进你的算法, 或者, 更新你的硬件了.

硬件方面总结

  1. 首先你需要知道你的显卡的Compute Capability , 在目前市面上绝大多数的都是支持1024 threads , 只有一些非常早期(Compute 1.x)的只是支持 512 threads. 如果是非常早期的一些显卡的话可以参阅这个WebPage
  2. 在你确定完你的Compute Capability 后, 根据此, 你的显卡的Compute Capability 如果是 1.x的话, Grid 支持的只有 1D 和 2D , 2.x 及以上才支持 3D 的 Grid , 而 block 则在1.x和2.x及更新的版本都支持3D , 在1.x / 2.x+的情况下, 每个block的最大支持分别是[512,512,64] / [1024,1024,64] ,现代显卡的Grid的size已经可以支持到[2^31-1,65535,65535]
  3. 每个block中的寄存器, 在Compute Capability为1.0,1.1/1.2,1.3/2.x-/3.0/3.2/3.5-5.2/5.3/6-6.1/6.2/7.0的情况下, 对应的寄存器总量不超过8k/16k/32k/64k/32k/6
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值