多线程 – 深入分析CPU和GPU之间的差异

前端之家收集整理的这篇文章主要介绍了多线程 – 深入分析CPU和GPU之间的差异前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在寻找cpu和GPU之间的主要区别,更准确地说,分离cpu和gpu的细微差别.例如,为什么不使用多个cpus而不是gpu,反之亦然.为什么gpu在处理计算中比“cpu”更快.他们中的一个可以做些什么,而另一个不能做,或者做得很好,为什么会这样.请不要回答“中央处理单位”和“图形处理单位”,我在寻找一个深入的技术答案.

解决方法

GPU基本上是大规模并行计算机.他们在可以使用大规模数据分解的问题上工作得很好,并且对这些问题提供了数量级的加速.

然而,GPU中的各个处理单元与通用性能cpu不匹配.它们更简单,并且没有像长管线,无序执行和指令级并行化这样的优化.

他们也有其他缺点.首先,您必须拥有一个用户,除非您控制硬件,否则您无法依赖此类设备.此外,在将数据从主存储器传输到GPU存储器并返回时还存在开销.

所以这取决于您的要求:在某些情况下,像特斯拉这样的GPU或专用处理单元是明确的赢家,但在其他情况下,您的工作不能被分解,以充分利用GPU,并且开销使cpu成为更好的选择.

猜你在找的Java相关文章