GPU与CPU是一个讨论的主题,正如@Nicol Bolas所指出的那样,问题在于寻找一个通用的解决方案,其中多种因素会影响结果.
在考虑性能时,没有什么比分析更好.众所周知,人类在预测其应用程序的性能影响方面表现不佳.如果在开发过程中你注意到你突然受到GPU限制,那么你可能想要将一些工作卸载到CPU.另一方面,如果您受CPU限制,您可以选择将更多工作卸载到GPU,即使该工作与图形无关.很可能你会想要通过给GPU提供尽可能多的东西(特别是如果它是图形相关的)来释放你的CPU周期.
你可以阅读更多的有关分析GPU上NVIDIA和AMD开发者网站或搜索GPU剖析教程/博客文章,如本.
GPGPU已成为并行编程领域的主要讨论话题,因为GPU的设计考虑了并行性.使用诸如SLI之类的技术向系统添加多个GPU 以进一步并行化处理也是常见的.这是@ Patashu评论赞成GPU并行处理的原则之一.如果您有兴趣了解更多信息,可以深入了解两个比较流行的基于GPU的并行编程平台OpenCL和CUDA.
以下帖子还讨论了该主题:
阅读其他出版物中的GPU宝石系列也是一个好主意.您可能会发现其他人在分配工作量时遇到的结果.