#辛先森科技说#CPU 和多个 CPU 有何区别?,多核( 二 )


借助这个比喻 , 我们应该能够得出结论 , 这三种方式提供48核的算力 , 延迟和带宽是依次下降的 。 下降的幅度和需要进行的workload有关 , 不能一概而论 。 大家可以借助一个工具来具体测量一下内存的延迟:
#辛先森科技说#CPU 和多个 CPU 有何区别?,多核
文章图片
在这个例子里面看出 , 本大楼的访问延迟比跨大楼的访问延迟低了一倍!
成本差距
既然大平层这么好 , 为什么还有人盖小高层呢?存在都是合理的 , 当然是成本高了 。 我在这篇文章中讲述了为什么Die大了成本就高:
CPU制造的那些事之二:Die的大小和良品率
简单来说 , 晶圆在制造过程中总是避免不了缺陷 , 这些缺陷就像撒芝麻粒 , 分布在整个Wafer上:
#辛先森科技说#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等方式 。