- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
解读AMD“推土机”架 对比intel的酷睿技术??
10月22日,AMD创新技术大会在京召开,AMD向业界展示了在CPU和GPU设计方面的创新成果和技术趋势。虽然AMD全球首发的Radeon HD6800系列显卡以及“融聚CPU和GPU”的APU设计足够夺人眼球,不过令笔者更加关注的还是AMD的下一代处理器架构“Bulldozer”(“推土机”),毕竟,自1999年K7架构问世以来,这将是AMD最为不同的一代处理器架构。
??? 或许应该用“革命”这样的形容词,因为“推土机”将是一个全新的处理器架构,基于“推土机”架构的处理器,将和K7之后的所有AMD处理器都不尽相同。
AMD全球服务器首席技术官Don Newell先生介绍Bulldozer架构
??? 对此,AMD也有自己的官方理由:“推土机”采用的是介于传统的“多核”和同步多线程(simultaneous multithreading,简称SMT)之间的第三种方式。我们知道,之前的AMD皓龙处理器采用的是“芯片多处理器”(chip multiprocessing, 即CMP)设计,每个独立的核心运行一个线程,比如AMD双核、四核皓龙,采用的就是CMP设计;而SMT技术是允许两个或更多的线程共享相同的核心,并发执行,比如像英特尔的Hyper-Threading。
??? 首先有必要来回顾一下CMP和SMT的优劣势:
SMT和CMP方式对比
????CMP:?CMP的方式非常直接,简单来说,CMP是通过“复制”物理核心来扩展处理器在多线程软件中的性能,这是获得最佳性能一种最简单和最有效的方式。但CMP的缺点是制造成本很昂贵,并且也要受到处理器制造工艺的限制,毕竟不能将芯片做的越来越大。并且CMP的方式对负载要求也很高,只有经过适当并行优化的负载才能充分发挥CMP的性能,很多核心的CMP常常会浪费资源,在一些应用中,主频更高、结构更简单的双核和四核处理器就往往可以获得更好的性能。??
????SMT:SMT是一个相对廉价的技术,比如英特尔的Hyper-Threading,允许每个物理核心运行两个同步线程。SMT的设计思想是充分利用每个核心的资源。如果一个物理核心只有一个执行线程,那么在等待内存中的关键代码或数据的时候,线程处于停顿状态,这样核心的利用率是低下的。而SMT技术允许一个物理核心运行两个或更多的线程,可以根据当前的状况动态进行切换,如果一个线程处于停顿状态等待内存,另一个线程的指令则可以使用这个物理核心的所有执行单元,让物理核心利用的更加充分。
??? 为了让SMT正常工作,处理器的所有代码和存储部分需要被复制或分区。例如,一个双线程SMT处理器需要两套架构寄存器和重命名寄存器,一套给线程A,一套给线程B。另外组成指令窗口的共享指令队列要具备很大的空间,这样指令窗口才能容纳足够多的来自两个线程的指令,让执行单元可以保持在忙碌状态。最后,两个线程任何共享单元,比如处理管线不同部分的指令缓存,都不能被任一个线程独占。换句话说,SMT核心的两个线程需要和另一个紧密的共享资源,保证核心的缓存单元不会空置没有线程利用。
??? SMT技术对那些不需要核心线程(threads)全负荷运行的多线程负载比较有意义,对于一个双线程SMT设计来说,如果这两个线程都需要花费很长时间等待主内存,那么这个双线程SMT会表现的就一个CMP双核处理器,甚至更加高效——因为它比CMP双核成本要低得多。在这种理想的状况下,一个双线程SMT核心几乎可以等同于一个双核处理器,并且能耗上还要低的多。
??? 但SMT的效率根据负载不同会有很大差异,AMD认为在真实的应用情况中,一个双线程SMT核心仅仅等同于1.3个常规核心的效能,因为很多时候线程都在执行资源而不是等待主内存响应,换句话说,如果主内存不再是瓶颈,SMT的执行单元就过剩了,而一个SMT核心也就不再比一个单纯的核心更高效,毕竟SMT核心需要增加一些电路设计,比一个单纯的核心成本要高一些。
??解读“推土机”架构
??? AMD“推土机”将采用32nm SOI工艺,这让“推土机”相比“马尼库尔”皓龙处理器可以在不增加功耗的前提下增加33%的核心数量、增加50%的吞吐量。与AMD之前所有处理器都有所不同的是,“推土机”采用了“模块化”的设计,每个“模块”包含两个处理器核心,这有些像一个启用了SMT的单核处理器。每个核心具有各自的整数调度器和四个专有的管线,两个核心共享一个浮点调度器和两个128位FMAC乘法累加器。
??? 所不同的,在K10架构中,ALU和AGU共享三个管线(平均1.5个),“推土机”中每个核心整数单元管线的数量增加为4个,2个AGU专有、2个ALU专有。L1缓存也有所不同,在K10架构中,每个核心具有64KB L1指令缓
文档评论(0)