1、内核设计全面模块化
AMD的“Bulldozer”是在K10之后推出的全新一代处理器架构,对AMD来说,这是自K7以来AMD处理器架构的一次根本性变革,在核心架构及功能性上都较K10有较大的改变。模块化设计,这让处理器在功能更加灵活的基础上更容易控制成本。物理结构,再根据市场价格策略来决定对内核进行有选择的屏蔽。这对产品的性价比取胜的AMD来说难以控制成本,而且要向在架构上开发出更多的核心的产品几乎要更新设计基板布局。
而Bullbozer处理器所引入的模块化设计刚好可以解决这个问题。Bulldozer在核心设计方面每两个核心组成一个单独的单元(称之为“核心模块”,两块物理内核集成到一个模块中),比如双核处理器直需要集成一个模块就可以了,即使是八核处理器也只需要集成四个模块,这让产品生产及成本控制更加具有灵活性,处理器核心模块的两个核心各自拥有一级缓存,但是共享二级缓存和预取,解码单元,所有的“核心模块”共享8MB三级缓存和北桥模块。
那么以后AMD处理器内核数量如何定义呢?未来的新架构四核心处理器指的是四个这样的模块呢,还是四个计算核心呢?AMD对此给出的回复是:“将每个拥有双整数核心的推土机模块视为一个独立的单元就对了。”显然,AMD在这里可以的回避了单纯的核心数量问题,更强调两两组成的有机整体,所以在面对推土机架构处理器的时候我们可以说它是四核心,八核心的,也可以说成是双模块,四模块的。只不过未来AMD或许不会再有奇数核心的处理器了。
2、高效的集群多线程架构
Bulldozer架构中的另一个新元素就是采用了基于集群的多线程技术。Bulldozer的内核模块是一个可以同时运行两个线程的处理组件,两个内核可以执行两个完全不会相互干扰的线程,有点类似于Intel的双核处理器的超线程奇数。
尽管双核、多线程和Bulldozer在线程并行执行方面是相同的,但是内核的分区却截然不同。多线程就是在一个单个的处理核心内同时运行多个工作线程的技术,和CMP芯片多处理器技术不同,后者是通过集成多个处理内核的方式让系统的处理能力提升,主流的多核处理器都是用了CMP技术,而像Pentium 4、Corei7这样的处理器带的“超线程技术”则属于多线程奇数,而Bulldozer是基于集群化多线程架构,Cluster-BasedMulti-threading:CMT,也称多簇式多线程技术。
在Intel的超线程方案中,采用的是复制处理器架构状态的方法来实现超线程,核心内部并没有增设一套额外的硬件执行单元来处理多线程,只是增加了处理器中存储线程有关数据的单元数量,并在硬件执行单元空闲时将这些数据送往其中处理,一边增加处理器执行单元的利用率。这种设计有一定的缺点,比如它只使用了一个指令窗口来负责两个线程的调度、执行和引退,效率并不高。这就像是生产线只有一名管理调度人员,一个人很难同时处理两个任务,这样有时候便会出现生产线故障,而处理器在碰到这种情况时性能则会出现明显的下降。
相对于传统超线程或双核技术,Bulldozer这种设计集群化架构的理念是让双核模块在多线程运算中更高效。Bulldozer每一个模块中加入了额外的执行单元,每一个模块都具备可以将一个大任务细分为多个并行任务的能力,这些生产线可以按需要任意整合,不会对整个装配线的效能造成影响。因此CMT技术的效能要高于传统的多线程方案。根据AMD介绍,单个“推土机模块”可以达到80%左右的多线程性能提升,而且所用的晶体管数目似乎并不比Intel的超线程奇数更多,这是一个相当鼓舞人心的成就。
根据路线图,Bulldozer架构会推出四核心、六核心和八核心的版本,其中四核心的证书性能大约比频率类似的Phenom II X4高出10%~35%。需要说明的是,CMT并不是AMD独有的技术,例如Sun和Oracle开发的Niagara/Niagara2(Ultra-SPARCT1/UltraSPARC T2)服务器处理器,尤其是Niagara2都采用与Bulldozer类似的线程设计。
3、更强的浮点和整数计算性能
Bulldozer所采用的集群化多线程架构之所以能实现如此高的性能,其中一个大原因就是AMD增加了CPU的运算单元——每个模块中的两个线程都具有独立的整数运算单元,只有浮点单元是共享的,这被称为具有两个证书运算单元“簇”。Bulldozer这种将两个线程的整数运算独立开来的设计可以更有效的提高处理器在基本应用中的性能。由于Intel的Nehalem架构的超线程奇数是两个硬件线程共享3组运算单元,冲突在所难免,而Bulldozer则是两个硬件线程独享4个整数运算单元,性能提升将会更加明显。根据AMD公布的Bulldozer执行单元的结构图,负责整数运算的整数执行单元和负责地质计算的载入/存储单元一共有4组(每单元2组)。(在K7/K8/K10中这样的单元也仅有3组,刚好对应K7/K8/K10的每周期处理3条宏指令的能力。)
需要说明的是,Bulldozer这种双“簇”也让AMD在产品设计上具有更高的灵活性上,未来处理器的分级可以通过控制“簇”的数量来实现:比如以后的Bobcat处理器就是切掉一个整数运算“簇”的Bulldozer。此外,Bulldozer的每个模块还具备两条128Bit FMAC(乘法累加运算)流水线,这将能够满足Bulldozer中信加入的AVX指令集扩展的需求,这种指令集扩展中包含了大量的128Bit多媒体指令集。
4、制作工艺“两级跳”
随着内核的倍增,处理器对生产工艺也提出了更高的要求,因此近几年来半导体厂商也会通过各种各样的信技术的是是用来维持摩尔法则的“More Moore“。在处理器生产工艺应用上,Intel一直走在AMD的前面,酷睿采用32nm制程已经差不多半年,但AMD的产品停留在45nm!这种情况将随着Bulldozer的诞生而得到改变,Bulldozer将采用32nm制程。预计32nm工艺将于2010年第三季度开始试产,病在2011年为AMD提供产能,28nm工艺于2010年第四季度上马,超低功耗版28nm工艺则排在2011年第一季度,它们都会是用HKMG技术。这意味着AMD将在2010年完成产品生产工艺升级的“两级跳”,从45nm进化至32nm后迅速再次进化至28nm,追回被Intel落下的时间。
此前,AMD已经展示了它们28nm产品的晶圆图,看来新技术似乎已经非常接近最后可用的程度。如果真的能够实现工艺两级跳,那么长期困扰AMD的工艺制程问题有可能得到巨大改善,AMD将走出窘境,进入全新发展的时代。
5、AMD推土机接口又升级
Bulldozer架构将采用新的AM3+接口,拥有941个针脚(AM3是938针、AM2+/AM2是940针),不同于938针脚的SocketAM3接口,其好处是可以支持DDR3 1866内存和高级技能技术。需要说明的是,AM3+是AMD最后一代针脚栅格阵列(PGA)封装,之后将改用触点栅格阵列(LGA),等到Fusion融合处理器降临的时候就会使用LGA AF1新接口,触点多大1591个。针对兼容性方面,按照AMD的说法,主板。
其实AMD最初也考虑过让Bulldozer沿用AM3接口,但是随后意识到必须做出一个选择,是继续提供AM3而损失新架构的一些新特性,还是升级接口带来更好的性能和功能?最终为了长远利益,AMD选择了后者。Bulldozer处理器将会首先用于服务器,预计首批芯片将是代号为“Interlagos”的服务器处理器,核心数在12个~16个之间。而针对桌面服务器市场,Bulldozer将会有4/6/8个核心的三个版本,三级缓存容量为8MB,支持DDR3 1866,首款采用Bulldozer架构的桌面处理器产品代号Zambezi,将成为AMD下一代高端桌面平台Scorpius的核心。
推土机架构采用了模块化结构,将两个整数运算核心和一个浮点运算核心捆绑为一个模块,算作双核心。即两个整数核心搭配一个浮点核心。按AMD的设想,这样简化了电路设计,可以节省出大量的晶体管来强化整数运算核心,来提高CPU的整数运算性能。至于弱化的浮点运算性能,可以交给显卡GPU来替代,毕竟浮点运算是GPU的强项。
这种设计思路是很先进的,但事与愿违。当时的 *** 作系统以及应用软件对GPU运算并没有做出足够的优化或者说没有提供很好的支持,这个设想太超前了生不逢时。导致实际测评中,推土机表现出来的性能并不理想,同频的单核性能明显弱于酷睿i架构,这导致了依赖单核性能的游戏性能不理想。具体来说,像FX-8150等高端八核(四模块)型号综合性能和同频的四核心酷睿i5等同,并在一些依赖多核心(多线程)的应用中占据一定的优势,比如WinRAR压缩等。而一旦面对四核八线程的同频i7,就完败了。
甚至,在和自家上一代K105架构高端六核心产品如羿龙II X6 1100T比较,八核心的推土机并没有表现出革命性的提高。
请参考当时的这篇专业评测文章:网页链接
综上,推土机架构不受待见的原因有二:
一是和竞争对手的产品相比,性能明显处于劣势。最高端的推土机只能匹敌i5,无法追赶i7的脚步。
二是相比前代K105架构提升并不大。如果将K105架构的羿龙II X6 1100T之类的老六核用32nm新工艺重新优化生产、扩充一下指令集,完全可以超越推土机,这足以说明推土机架构是一个失败的架构。不像对手的酷睿i架构相较于775时代的酷睿2的提升属于革命性的。
和推土机一脉相承下来的打桩机、压路机等,仍然无法匹敌酷睿i架构。所以,AMD痛定思痛、卧薪尝胆,抛弃了模块化架构,研发了Zen架构,引入了超线程技术,推出了大获成功的锐龙,多年以后重新在高端桌面CPU领域追上了对手的步伐。
关于当年推土机的客观测评文章,你可以自己百度一下看看。
推土机只是开发代号而已,这个架构最大的特点就是乱序执行引擎和一个模块两个核心,类似于INTEL的超线程 推土机架构新技术介绍:1、革新的Turbo Core技术——全核心加速技术2、新接口新工艺3、加强型内存控制器4、同时支持AVX指令和SSE指令5、更先进的电源管理技术推土机重点改进的地方包括功耗/核心面积效率、新的ISA支持、核心扩展性、模块化设计理念,有望显著改善单位功耗和面积的性能。 推土机架构特点:1、内核设计全面模块化2、高效的集群多线程架构3、更强的浮点和整数计算性能4、制作工艺“两级跳”5、AMD推土机接口又升级 推土机架构解析: CMP和SMT:CMP:CMP的方式非常直接,简单来说,CMP是通过“复制”物理核心来扩展处理器在多线程软件中的性能,这是获得最佳性能一种最简单和最有效的方式。但CMP的缺点是制造成本很昂贵,并且也要受到处理器制造工艺的限制,毕竟不能将芯片做的越来越大。并且CMP的方式对负载要求也很高,只有经过适当并行优化的负载才能充分发挥CMP的性能,很多核心的CMP常常会浪费资源,在一些应用中,主频更高、结构更简单的双核和四核处理器就往往可以获得更好的性能。SMT:SMT是一个相对廉价的技术,比如英特尔的Hyper-Threading,允许每个物理核心运行两个同步线程。SMT的设计思想是充分利用每个核心的资源。如果一个物理核心只有一个执行线程,那么在等待内存中的关键代码或数据的时候,线程处于停顿状态,这样核心的利用率是低下的。而SMT技术允许一个物理核心运行两个或更多的线程,可以根据当前的状况动态进行切换,如果一个线程处于停顿状态等待内存,另一个线程的指令则可以使用这个物理核心的所有执行单元,让物理核心利用的更加充分 推土机架构分析: 每个线程具有独立的整数执行单元是AMD“推土机”和双线程SMT设计的主要区别。不过从“推土机”的设计来看,这并不像真正意义上的“CMP双核”,毕竟两个核心还要共享浮点执行单元,或者可以称之为“15核”。这样设计的好处就是能够大大节省晶体管的数量、降低核心面积和功耗,同时降低成本。即使不是真正的“双核”,但不难想象这样的设计要比SMT更加高效,相比之下,传统的SMT设计可以称之为是一种“12核”的设计。 AMD表示平均计算下,一个单独的“推土机”核心执行两个线程可以达到18核CMP的效率,但是,这样的数字也是要依赖于负载情况。虽然“推土机”的模块设计要比传统的SMT设计在执行效率上更高,但是增加的整数执行单元也提高了成本和能耗。另外,没有意外的话,AMD“推土机”应该具备很好的浮点计算性能。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)