一句话说,且不提AMD这次的缓存效率能不能像它所宣称的那样,一二级缓存吞吐量翻倍,三级缓存速度乘个5,至少在大小上,压过Intel现在的Skylake没问题。
三元方法论:真正的SMTIntel
对于同步多线程(SMT)的应用最早可追溯到2008年,把一个核心分身成两个线程是件困难的工作,光是给这两个线程交待怎么互相搞好关系,合理使用缓存和资源,不要独吞晾着对方……这些已经够那些工程师们喝一壶了。也许AMD这么些年来一直没给自家CPU加入SMT能力,就是给这个难题挡住了路,明年应该能见到8核心/16线程的AMD CPU了吧。
从内部看,Zen核心的线程之间的调度主要还是遵循时分策略,虽然考虑到不同线程可以有很多不同的占用特点,这并不是最佳方案,AMD还是靠自己的一套线程标记/判别方法论强行上。在Zen里面干涉进程优先级通常有三种情况,一种是CPU会对每个线程的数据流进行分析,判断哪个在算法上优先级更高——在对应分支预测、整型/浮点重命名此类资源偏重型的工作时,线程据此调整优先级;另一种是在线程涉及TLB缓存和Load队列操作等延迟敏感型(反映到上层通常都是及时响应用户作出反馈)操作时,CPU就根据延时需求标记来分配线程处理的优先级;而像微指令队列这种按照顺序一路走下来的部分,CPU就会使用静态时分策略让线程交替处理。至于其余的部分就简单粗暴得多,先到先得,哪个线程要更多对应的核心资源,哪个线程就会抢着先占用它们。
如果提高到从操作系统和应用软件的层级,以它们的视角观察看AMD的SMT,Zen的SMT类似于Intel的超线程,每一个线程都被当作是核心对待,不会像推土机那样存在资源使用限制。不知道AMD这次是不是从Intel的HyperThreading中得到启示,能不能青出于蓝,但可以确定,Zen浮点计算的性能相比上一代AMD CPU会得到不小提升。
制程工艺:又见FinFET
网友肯定听FinFET这个术语都听到耳朵起茧了,我们之前关于手机处理器芯片的讨论没少对这个技术作过介绍,所以此处我们长话短说。
功耗一直都是AMD设计自家CPU时习惯照顾的方面,实现100W以内的TDP不光是把门控时钟设置得更激进,Zen打算借助他们早些时候在Polaris GPU上已经实际检验过Global Foundries 14nm FinFET工艺。而且AMD并不打算照搬GPU的方案,他们还要用密度优化过的这套工艺,毕竟需要控制DIE面积——这是AMD在这次Hot Chips上没有交待的事情。如果现在的这套设计迫使他们使用500mm2的14nm DIE,那就和AMD一贯的价格策略背道而驰了,最终成品一定会贵上天。
不过考虑到Zen的诞生就一直伴随着目标调整,所以现在也很难确定,AMD的下一代CPU究竟能保持多少现在我们所看到的样子。
纸面上的40%,现实里的2%?
说了这么多,最终用户其实是很难被ppt所忽悠的,管你吹数字吹架构吹得天花乱坠,他们想要的无非两点:第一,要能以合适的价格买到;第二,用起来实际感受确实不慢。AMD在Hot Chips 2016上有向与会者做过Blender跑分,3GHz的8核Zen和3GHz的8核Broadwell-E,在同样的多线程定制负载下,Zen能比Broadwell快2%。但更多的配置细节AMD没有透露,在背着“ppt崛起”的前科的时候,说话的选择只能谨慎谨慎再谨慎,打消公众怀疑不是件简单的事。
假如这一次AMD能成功在2017年第一季度批量出货Zen(实际上就现在这个时间来谈,已经是跳票了,原定是今年10月的),到时候消费者可能会先在品牌机里找到新CPU的身影。也许他们能够抓住这次杀回高端x86 CPU战场的机会,再度与Intel同台竞技,但至少要保证自己面对老对手的时候,手里有牌能打才行,可别再跳票了。
本文来源:不详 作者:佚名