在“廉价”GPU上开发CUDA

3
我在桌面上使用CUDA开发算法,这些算法之后将在服务器上运行。
使用最近的低端显卡(如计算能力2.1)来获取所有良好的调试和分析功能是否可行,然后将代码放在具有相同计算能力的高端显卡的服务器上?我只需要调整线程/网格大小,还是它会改变所有东西™。
例如:我会在Quadro 600上进行开发,而服务器将使用Tesla C2075
3个回答

2
只要您的内核调用和内核本身是可扩展的,就没有问题。
看看这个问题:
{{link1:在不同卡上进行CUDA开发?}}

1

存在一些问题,例如内存带宽不同(根据您提供的链接,Quadro为25.6 GiB/s,而Tesla为148 GiB/s),或SM数量不同(驱动程序可能会在不同的SM之间分配块)。然而,在大多数情况下,这些小差异并不重要。


1
如果服务器安装了多个GPU,则需要更改代码以在Multi-GPU上运行,以充分利用服务器的性能。虽然相同的代码可以在单卡上运行良好。
如果服务器只有一张卡,则一般的经验法则是您不需要更改任何代码行来利用更强大的GPU的性能,因为驱动程序会自动在SM之间分配负载。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接