1. 超能网 >> 
  2. 新闻 >> 
  3. 显卡 >> 
  4. 有问有答:GPU能取代CPU吗?

有问有答:GPU能取代CPU吗?

2018-4-2 12:34  |  作者:thesea   |  关键字:有问有答,GPU,CPU

分享到:
本文约914字,需2分钟阅读
GPU是替代不了CPU的,同样,CPU也替代不了GPU。如果形象点理解,GPU就像一群蚂蚁,这些蚂蚁都做着同样的事,而CPU就像一只猴子,这只猴子做着各种不同的事。
从根本上说CPU和GPU它们的目的不同,且有不同侧重点,也有着不同的性能特性,在某些工作中CPU执行得更快,另一工作中或许GPU能更好。当你需要对大量数据做同样的事情时,GPU更合适,当你需要对同一数据做很多事情时,CPU正好。然而在实际应用中,后一种情形更多,也就是CPU更为灵活能胜任更多的任务。GPU能做什么?关于图形方面的以及大型矩阵运算,如机器学习算法、挖矿、暴力破解密码等,GPU会有所帮助。简单地说,CPU擅长分支预测等复杂操作,GPU擅长对大量数据进行简单操作。一个是复杂的劳动,一个是大量并行的工作
其实GPU可以看作是一种专用的CPU,专为单指令在大块数据上工作而设计,这些数据都是进行相同的操作,要知道处理一大块数据比处理一个一个数据更有效,执行指令开销也会大大降低,因为要处理大块数据,意味着需要更多的晶体管来并行工作,现在旗舰级显卡都是百亿以上的晶体管。CPU呢,它的目的是尽可能快地在单个数据上执行单个指令。由于它只需要使用单个数据单条指令,因此所需的晶体管数量要少得多,目前主流桌面CPU晶体管都是十亿以下,和顶级GPU相差十倍以上,但它需要更大的指令集,更复杂的ALU(算术逻辑单元),更好的分支预测,更好的虚拟化架构、更低的延迟等等。另外,像我们的操作系统Windows,它是为x86处理器编写的,它需要做的任务执行的进程,在CPU上肯定更为高效,你想每个线程的任务并不相同,基本上难以并行化,完全发挥不了GPU的长处。那么,可以预见在未来,随着CPU进一步强化处理数据块的能力,我们将看到CPU和GPU架构之间的融合,而且,随着制造技术的进步和芯片的缩小,GPU也可以承担更复杂的指令。CPU与GPU间的分工虽然还是大有不同,但彼此间的交集无疑会更多。有问有答专栏是我们专门用来解答网友问题的一个栏目,如果你对本文或硬件上有其他疑问,欢迎随时咨询我们人气编辑小超哥(微信9501417),我们还会选取部分问题放在有问有答栏目。当然你还可以让小超哥邀请你加入我们超能网硬件交流群哦,一起嗨皮一起吃鸡~~

    
  1. 游客  04-03 14:19

    游客:

    CPU晶体管数量一点也不少,i7 7980XE少说也有60亿以上晶体管
    04-02 13:12
  2. 支持(0)  |   反对(0)  |   举报  |   回复
  3. 游客:

    已经隐藏3层评论[点击展开]

    游客:

    不是缓存,说的是寄存器。不科学的说就是L0 Cache。这玩意比L1还要花晶体管。GP100,你猜有多少regiester file?14336 KB... 至于构架难度,我真的不知道你是如何得出GPU比CPU设计难度小得多的结论的...
    04-02 21:32
  4. 支持(2)  |   反对(0)  |   举报  |   回复
  5. 所以没必要特意单独拿一部分结构出来比较

    支持(0)  |   反对(0)  |   举报  |   回复

    17#

  6. 
  7. 游客  04-03 12:26

    假如GPU(图形处理器)取代了CPU(中央处理器)了,那他还是会叫做CPU

    支持(4)  |   反对(0)  |   举报  |   回复

    16#

  8. 
  9. 游客  04-03 08:26

    游客:

    我觉得开篇这么科普,是非常不错的:简单、明了、直入主题。
    很多时候,我们需要的,就是这样的科普。
    04-02 15:58
  10. 支持(9)  |   反对(0)  |   举报  |   回复
  11. 这一次,应该给编辑点个XXXXXXXL号的赞!

    支持(0)  |   反对(0)  |   举报  |   回复

    15#

  12. 
  13. 游客  04-02 21:35

    换句话说还是微软这个辣鸡没专门开发能跑在GPU上的版本导致的,果然是业界毒瘤。

    支持(1)  |   反对(8)  |   举报  |   回复

    14#

  14. 
  15. 游客  04-02 21:32

    游客:

    CPU晶体管数量一点也不少,i7 7980XE少说也有60亿以上晶体管
    04-02 13:12
  16. 支持(0)  |   反对(0)  |   举报  |   回复
  17. 游客:

    应该是大缓存所致。CPU里面的高速静态缓存与cpu和gpu又是另一种存在。
    04-02 14:07
  18. 支持(1)  |   反对(0)  |   举报  |   回复
  19. 游客:

    一样的,GPU里有巨量的寄存器,所以没必要特意抛去来比较
    04-02 14:17
  20. 支持(2)  |   反对(0)  |   举报  |   回复
  21. 游客:

    GPU的缓存差CPU太多,架构设计难度也差得多。
    04-02 18:40
  22. 支持(1)  |   反对(0)  |   举报  |   回复
  23. 不是缓存,说的是寄存器。不科学的说就是L0 Cache。这玩意比L1还要花晶体管。GP100,你猜有多少regiester file?14336 KB... 至于构架难度,我真的不知道你是如何得出GPU比CPU设计难度小得多的结论的...

    支持(2)  |   反对(0)  |   举报  |   回复

    13#

  24. 
  25. 游客  04-02 21:00

    游客:

    CPU晶体管数量一点也不少,i7 7980XE少说也有60亿以上晶体管
    04-02 13:12
  26. 支持(0)  |   反对(0)  |   举报  |   回复
  27. 游客:

    应该是大缓存所致。CPU里面的高速静态缓存与cpu和gpu又是另一种存在。
    04-02 14:07
  28. 支持(1)  |   反对(0)  |   举报  |   回复
  29. 游客:

    一样的,GPU里有巨量的寄存器,所以没必要特意抛去来比较
    04-02 14:17
  30. 支持(2)  |   反对(0)  |   举报  |   回复
  31. 游客:

    GPU的缓存差CPU太多,架构设计难度也差得多。
    04-02 18:40
  32. 支持(1)  |   反对(0)  |   举报  |   回复
  33. 对,GPU里的缓存结构比CPU的缓存单一得多,而且CPU对延迟敏感,GPU对带宽敏感,所以两者的设计侧重点上肯定有很多不同。

    支持(0)  |   反对(0)  |   举报  |   回复

    12#

  34. 
  35. 游客  04-02 20:06

    先破了 量子隧穿 在说吧

    支持(0)  |   反对(0)  |   举报  |   回复

    11#

  36. 
  37. 游客  04-02 18:40

    游客:

    CPU晶体管数量一点也不少,i7 7980XE少说也有60亿以上晶体管
    04-02 13:12
  38. 支持(0)  |   反对(0)  |   举报  |   回复
  39. 游客:

    应该是大缓存所致。CPU里面的高速静态缓存与cpu和gpu又是另一种存在。
    04-02 14:07
  40. 支持(1)  |   反对(0)  |   举报  |   回复
  41. 游客:

    一样的,GPU里有巨量的寄存器,所以没必要特意抛去来比较
    04-02 14:17
  42. 支持(2)  |   反对(0)  |   举报  |   回复
  43. GPU的缓存差CPU太多,架构设计难度也差得多。

    支持(1)  |   反对(0)  |   举报  |   回复

    10#

  44. 
  45. 游客  04-02 18:01

    各司其责:
    跑车轻巧,速度快;
    货车笨重,载重多;
    CPU就像跑车一样,GPU就像货车一样;
    跑车不需要载太多的物体,大货车空跑也跑不过跑车,跑车也拉不动大货车

    支持(0)  |   反对(0)  |   举报  |   回复

    9#

  46. 
  47. yjhercules终极杀人王 04-02 16:46

    gpu可以计算机
    但是没有指令集优化
    sse avx

    支持(0)  |   反对(0)  |   举报  |   回复

    7#

  48. 
  49. tnt1983研究生 04-02 16:10

    未来,这两个东西肯定是融合的。

    支持(2)  |   反对(0)  |   举报  |   回复

    6#

  50. 
  51. 游客  04-02 15:58

    我觉得开篇这么科普,是非常不错的:简单、明了、直入主题。
    很多时候,我们需要的,就是这样的科普。

    支持(9)  |   反对(0)  |   举报  |   回复

    5#

  52. 
  53. 游客  04-02 14:17

    游客:

    CPU晶体管数量一点也不少,i7 7980XE少说也有60亿以上晶体管
    04-02 13:12
  54. 支持(0)  |   反对(0)  |   举报  |   回复
  55. 游客:

    应该是大缓存所致。CPU里面的高速静态缓存与cpu和gpu又是另一种存在。
    04-02 14:07
  56. 支持(1)  |   反对(0)  |   举报  |   回复
  57. 一样的,GPU里有巨量的寄存器,所以没必要特意抛去来比较

    支持(2)  |   反对(0)  |   举报  |   回复

    4#

  58. 
  59. 游客  04-02 14:15

    主流CPU,1700这种8C16T的48E,1400这种一半规格的估计30E+;主流GPU如果是1050Ti,那就是33E,1060那就是44E。所以其实规模没相差的那么大... 如果小编使用CPU的一个Core且刨去Uncore部分,那么确实10E以下,但GPU的一个CU单元其实也很小...

    支持(0)  |   反对(0)  |   举报  |   回复

    3#

  60. 
  61. 游客  04-02 14:07

    游客:

    CPU晶体管数量一点也不少,i7 7980XE少说也有60亿以上晶体管
    04-02 13:12
  62. 支持(0)  |   反对(0)  |   举报  |   回复
  63. 应该是大缓存所致。CPU里面的高速静态缓存与cpu和gpu又是另一种存在。

    支持(1)  |   反对(0)  |   举报  |   回复

    2#

  64. 
  65. 游客  04-02 13:12

    CPU晶体管数量一点也不少,i7 7980XE少说也有60亿以上晶体管

    支持(0)  |   反对(0)  |   举报  |   回复

    1#

查看全部评论(16)
回复