盖棺定论?——Zen2的美好与遗憾

2020已过去了一半有余,回看Zen2的上市已是整一年以前,全新Zen3也即将到来
现在或许是一个对Zen2“盖棺定论”的时间了,同时也展望一下接下来的Zen3能给我们那些提升
一.Chiplet的功与过
去年Zen2发布的时候,最令我感到惊叹的并不是7nm的工艺,而是Chiplet小芯片设计
Chiplet意味着原本高度集成化的CPU被分解,变为几个功能单一面积更小的芯片的集合,体现在Zen2上就是核心加缓存的计算部分与PCIE和内存控制器等IO部分分离
这样的多die设计可以类比为多年前的北桥与cpu之间的关系,而多个计算die的Ryzen9以及线程撕裂者某种意义上可以与多路CPU类比
但是这并不是设计上的倒退,而是CPU发展上的一大创新,可以说解决了CPU芯片光刻过程中由于光罩大小受限导致裸片面积上限的问题
用人话说就是光刻机一次所能处理的硅片面积是有上限的,所以以前没有办法制造出EPYC或者线程撕裂者这样的核心面积巨大的“怪物”
所以AMD选择把一个巨大的芯片分成多个小芯片,例如TR3990WX就有8个计算die和一个IO die;Ryzen9有两个计算die和一个IO die;Ryzen7和Ryzen5都仅有一个计算die和一个IO die
这样做不仅解决了上文中说的核心面积限制问题,同时也大幅降低了设计与制造成本
让我们用隔壁intel做一下对比,intel的消费级Core系列,HEDT的Core X系列以及服务器的Xeon Scalable系列需要分别设计,Xeon Scalable的缓存设计甚至与前两者完全不同。同时在生产过程中每一种核心数量与IO配置的CPU都需要单独生产

反观AMD,只需要设计和制造两种芯片——八核心的计算die,分别对应16核心及以下的RyzenCPU的IOdie和16核以上CPU的另一种IOdie即可
同时由于晶片面积较小,良品率较高,生产成本进一步降低,更适合堆核心。所以在HEDT以及服务器领域,AMD可以轻松拿出比对手便宜得多的CPU
前面说了这么多chiplet的优点,但对于Ryzen系列CPU它也有自己自己的先天不足
使用chiplet,必然会牵扯各芯片间通信的问题,目前来看AMD已经拿出了一个还算不错的解决方案——Infinity Fabric,IF总线

IF总线最大特点是芯片内连接与跨芯片连接间协议完全相同,无需数据转换,很好的降低了跨芯片连接的延迟,能够防止die与die之间信息传输延迟过高导致多路CPU一样执行某些任务时效率低下的问题
但是即使有了IF黑科技,跨芯片互连延迟依然较高
以内存延迟为例,Intel lake系列CPU在不进行内存超频的情况下内存延迟大约60ns,而Ryzen3000在使用两倍于前代与竞争对手的超大三级缓存的情况下也几乎要100ns

不仅如此,内存控制器与计算部分分离使得IF总线频率(FCLK)会影响内存超频的性能。只有在FCLK与内存的工作频率同步时才能发挥出最佳效能
FCLK的最高频率由于CPU体质原因一般在1800-2000之间,也就是说Zen2内存超频的使用最高等效频率不超过4000MHz,超过4000MHz后必然因总线频率与内存工作频率异步使得内存性能不增反降,限制了诸如CJR,C9,B-die等颗粒在Zen2平台上的发挥
这使得Zen2在进行内存超频时延迟也难以突破60ns大关,与intel的40ns左右差距明显,与自家未使用chiplet技术,内存控制器内置的雷诺瓦APU的低于50ns也有一定差距
同时,由于计算die数量不同的CPU使用相同的IOdie,部分CPU的IO能力“先天残疾”,例如Ryzen5与Ryzen7的内存写入性能只有其它CPU(例如Ryzen9,intel CPU)的一半,在使用双通道内存的情况下若不进行内存超频都很容易因内存写入带宽不足而无法发挥全部性能
二.工艺先进,但并不完美
除了chiplet的多dai设计,Zen2另一大亮点便是领先牙膏厂两代的7nm工艺
相比隔壁“万年14nm”“14nm+++++”,AMD Zen2可以说是很激进的跳过了10nm工艺节点,直接采用TSMC 7nm工艺
更先进的工艺可以在单位面积上堆更多的晶体管,减小核心面积,提高良品率,抵消双倍三级缓存带来的制造成本的提升
虽然更先进工艺的功耗更低,但是单位面积内晶体管数量的提升更大,实际的单位面积功耗也就更高,致使cpu功耗低,发热小但是散热困难。或许也是由于这一点,Zen3并没有采用晶体管密度更高的7nm EUV,而是进一步打磨7nm
而且TSMC本身一直以来为手机SOC,GPU等工作频率较低的芯片代工,在需求高主频的的CPU制造上经验并不如intel,格罗方德等老牌CPU代工厂丰富
综合以上原因导致Zen2虽然功耗不高,但是主频超过4.5GHz后温度暴增,“积热”问题严重,难以像intel一样在5.0GHz的高频上日常使用
虽然批次靠后(19年40周之后)的Ryzen改进了工艺,积热问题也并没有太大改善。即使是官方特挑的XT系列,日常使用4.8GHz还是几乎难以实现,更不会出现水冷全核5.8GHz(i7 10700k)的神雕
三.一些“小问题”
AMD CPU向来缺少部分指令集,例如有关超线程调度的TSX,有关浮点计算的AVX512,部分人也以此认为AMD核心调度会出现问题或者浮点运算能力低下
然而intel由于安全漏洞在10代core中删除了TSX指令集,AVX512也被Linux之父诅咒“安详的死去”。总之这些小问题现在来看都已经不是问题了——因为由于各种原因,现在大家都没有或者有也不好用
最后是对Zen3的展望了,对于Ryzen4000系列CPU,现在来看相比Ryzen3000最容易解决的问题便是Ryzen5/7内存写入性能“先天残疾”的问题——只需为单计算die CPU再做一款IOdie即可,对于Ryzen5/7这些出货量极大的CPU成本应该不会是问题
其次是FCLK频率,通过优化IOdie如果能略微增加极限频率就很好,例如稳定可以达到到2000MHz,甚至更进一步达到2200MHz,使绝大多是内存可以不受FCLK限制
当然,ipc性能与主频若是能再有突破更会带给我们惊喜。毕竟intel的Comet Lake在凭借更新的架构提升了ipc的同时改善封装加强散热,巩固了游戏神U的地位,甚至10500在很多游戏中“默秒全”
根据目前的消息,明年的桌面酷睿Rocket Lake还是14nm工艺,估计不会有较大提升,Zen3是目前唯一有希望diy市场带来惊喜的产品了,或许明年AMD竟会彻底摆脱“为我们带来更便宜的intel”的尴尬,真正拿出“全方位碾压”的产品

文章到这里就结束了,觉得有用点个赞再走呗