查看: 1719|回复: 5

多核 CPU 和多个 CPU 有何区别?

[复制链接]

26

主题

103

帖子

324

积分

中级会员

Rank: 3Rank: 3

积分
324
发表于 2019-6-11 02:12:25 | 显示全部楼层 |阅读模式
WRg18MRrm2j6r8RS.jpg



多核CPU和多CPU的区别重要在于性能和本钱。多核CPU性能最好,但本钱最高;多CPU本钱小,自制,但性能相对较差。我们来看一个例子:如果我们必要构成一个48核的计算机,我们可以有这么三种选择:

  • 把48个核全部做到一个大Die上,Die很大。这个Die加上一些外围电路构成一个单Die多核CPU。
  • 弄4个小Die,每个Die 12个内核,每个Die很小。把这4个Die,加上互联总线和外围电路,全部封装(Packaging)到一个多Die多核CPU中。
  • 还是弄4个Die,每个Die 12个内核,每个Die很小。每个Die加上外围电路封装成一个单独的CPU,4个CPU再通过总线构成一个多路(way/socket)系统。
我们来看看他们的性能差距和本钱差距。
性能差距

为了很好的理解三者之间的区别,我们通过一个生活中的场景分别指代三种方式。我们想像每个Die是一栋大楼,Die里面的内核们,内存控制器们、PCIe控制器们和其他功能模块是其中的一个个房间。数据流和指令流在它们之间的流动看作房间里面的人们互相串门,这种串门的方便水平和走廊宽度决定了人们愿不肯意和多少人可以同时串门,也就指代了数据的耽误和带宽。
好了,有了这种方便的比喻,我们来看看三种情况分别是什么。
48核的大Die是Intel至强系列的尺度做法:
h8Ov2YjhMvSjH774.jpg



这种方法就是既然必要这么多房间,业主有钱,就建一个大楼,每层都是超等大平层:
W4QmKZQ1z4cdqCYu.jpg



走廊浩繁,这里堵了,换个路过去,反正方向对了就行,总能到的。所以人们可以很方便的串门,也可以有很多人同时串门。所以耽误小,带宽高。
一个CPU pacakge里面包了4个小Die的做法是AMD的尺度做法,也有部门Intel也如许:
TzL9nN4jyNrX4z9L.jpg



这种做法可以看作业主没钱搞大平层,但也要这么多房间,怎么办呢?在原地相邻得建4个小高层,再把小高层连起来,房间数目稳定。怎么把它们连起来呢?比力现代的做法有两种:
E9NvvfLgag9JA20G.jpg



这种做法也叫做MCM(Multi-Chip-Module),详细内容可以看我的这篇文章:
如何像搭积木一样构建CPU?Intel和AMD都是怎么做的?
其中AMD接纳硅中介(Interposer),也就是上面那种;Intel接纳EMIB(Embedded Multi-die Interconnect Bridge),是下面那种。
硅中介的做法可以看作为了两个楼互通,我们把地下都挖空了,搞了个换乘大厅。而EMIB可以看成在两个楼之间挖了一个地下通道。显然挖通道更省钱省力,但由于通道是两两互联的,如果大楼多了,还不如换乘大厅方便。
好了,那我们的串门问题怎么解决呢?由于楼和楼(Die和Die)之间只有地下互通,要串门的人都要做电梯到地下一层,通过隧道或者换乘大厅到另一个大楼地下,再做电梯去想要的楼层。路途迢遥,好多人都不想串门了,同时如果串门人太多,会挤爆电梯,不得不串门联系工作的人们在电梯口排起了长队。显然,建筑四个相邻小高层的办法,耽误和带宽都比力差。
那么多CPU呢?
GBbQeqy6RSlslYCR.jpg



还是没钱盖大平层,这次更惨,由于4层小高层间隔比力远,为了方便人们串门,不得不在园区里面搞了班车,用于跨楼通勤。由于班车开停必要时间,人们串门更加麻烦了。
借助这个比喻,我们应该能够得出结论,这三种方式提供48核的算力,耽误和带宽是依次下降的。下降的幅度和必要进行的work load有关,不能一概而论。各人可以借助一个工具[1]来具体丈量一下内存的耽误:
BJYQtrP7mQD33TgQ.jpg



在这个例子里面看出,本大楼的访问耽误比跨大楼的访问耽误低了一倍!
本钱差距

既然大平层这么好,为什么还有人盖小高层呢?存在都是合理的,固然是本钱高了。我在这篇文章中讲述了为什么Die大了本钱就高:
CPU制造的那些事之二:Die的巨细和良品率
简单来说,晶圆在制造过程中总是制止不了缺陷,这些缺陷就像撒芝麻粒,分布在整个Wafer上:
ManRrpZSc0asEbsg.jpg



如果考虑缺陷,Die的巨细会严峻影响良率:
hHe6p1egGzFZ7fzf.jpg



上图各人可以点开看(图比力大),其中不太清楚的红色小点是晶圆的缺陷,在Die很大时,有很大概率它的范围内会缺陷,而只要有缺陷该Die就报废了(简化处置惩罚);在Die比力小的时候,它含有缺陷的可能性就大大降低了。如图中,随着Die的减小,良率从第一个的35.7%提高到了95.2%!我们举个极端的例子,整个Wafer就一个Die,那么良率只有0%了,生产一个报废一个。谁还干这么傻的事!
这种本钱增长不是线性的,而是指数性增长,具体的数字是厂商的核心机密,不为外人道。但总的来说,结合前面的例子来说就是:
1个大Die本钱 > 4个小Die+互联线路总本钱
那么方式2和方式3本钱谁高呢?实际上方式2节约了主板上大量布线和VR等本钱,总本钱更低,也是主板和服务器厂商喜闻乐见的情势;而方式3往往用于堆出更多的内核和必要更多内存的情况。
结论
相信读到这里,同学们已经有了答案,结论开头已经说明,就不再赘述了。多核CPU和多Die乃至多路CPU,对操纵系统等来看,区别不大,BIOS都陈诉了同样多的很多CPU供他们调理。区别重要在于性能上面,大Die多核性能最好,也最贵。多Die性能下降,但经济实惠。
末了要留意,这些性能区别有些是操纵系统可以感知的,如通过NUMA等方式,操纵系统可以具体做出优化。但也有部门是操纵系统不能够知道的,只有通过各种真实的workload,用户那里才会感觉有明显的差别。




上一篇:手机号码已注销,微信号会不会官方被删除?
下一篇:开30多万的车的人一样平常有多少钱?

30

主题

103

帖子

327

积分

中级会员

Rank: 3Rank: 3

积分
327
发表于 2019-6-11 01:15:34 | 显示全部楼层
同样核数的情况下,多CPU本钱比单CPU购买本钱低,但是功耗本钱比单CPU高。好比七代i3是2C4T,两个一起就是4C8T,和七代i7一样,两个i3的价格比i7低,但TDP是102w比i7(65w)高。
回复 支持 反对

使用道具 举报

24

主题

94

帖子

284

积分

中级会员

Rank: 3Rank: 3

积分
284
发表于 2019-6-11 01:31:04 | 显示全部楼层
研究的过程中,不知不觉组装了一台电脑
回复 支持 反对

使用道具 举报

26

主题

103

帖子

324

积分

中级会员

Rank: 3Rank: 3

积分
324
 楼主| 发表于 2019-6-11 01:46:24 | 显示全部楼层
一个必要同步率和vac兼容,一个是独立运行内存。
回复 支持 反对

使用道具 举报

25

主题

95

帖子

305

积分

中级会员

Rank: 3Rank: 3

积分
305
发表于 2019-6-11 02:01:10 | 显示全部楼层
双路
回复 支持 反对

使用道具 举报

25

主题

105

帖子

327

积分

中级会员

Rank: 3Rank: 3

积分
327
发表于 2019-6-11 02:15:31 | 显示全部楼层
转发了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

站内会员言论和发布内容仅代表个人观点, 并不代表本站同意或支持其观点, 本站不承担由此引起的法律责任,如侵犯版权请与我们联系处理