Mik*_*e G 12 architecture performance multithreading gpu multicore
我一直在寻找CPU和GPU之间的主要区别,更确切地说是分离cpu和gpu的细线.例如,为什么不使用多个cpu而不是gpu,反之亦然.为什么在运算计算中gpu比cpu"更快".什么类型的东西,其中一个可以做,另一个不能做或做有效的,为什么.请不要回复"中央处理单元"和"图形处理单元"等答案.我正在寻找深入的技术答案.
GPU基本上是大规模并行计算机.它们可以很好地处理可以使用大规模数据分解的问题,并且可以在这些问题上提供数量级的加速.
但是,GPU中的各个处理单元无法与CPU匹配以实现通用性能.它们更简单,并且没有像长流水线,无序执行和指令级并行化这样的优化.
它们还有其他缺点.首先,您必须拥有一个,除非您控制硬件,否则您不能依赖它.还有将数据从主存储器传输到GPU存储器并返回的开销.
因此,这取决于您的要求:在某些情况下,GPU或特斯拉等专用处理单元是明显的赢家,但在其他情况下,您的工作无法分解以充分利用GPU,而且开销使CPU成为更好的选择.