多核 CPU 和多个 CPU 有何区别?( 二 )


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

文章插图
 
如果考虑缺陷,Die的大小会严重影响良率:
多核 CPU 和多个 CPU 有何区别?

文章插图
 
上图大家可以点开看(图比较大),其中不太清楚的红色小点是晶圆的缺陷,在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,用户那里才会感觉有明显的不同 。

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


推荐阅读