热点推荐

艰难的跨越 融合处理器GPU单元现状分析


分页浏览|全文浏览    【中关村在线 原创】 作者:濮元恺 | 责编:林光楠     评论
产品:A8-3800 AMD CPU 回到顶部阅读

融合概念提出与先行

  ● 融合概念提出与先行

  融合处理器是指CPU主动将GPU等单元整合在芯片内部,并且通过统一的总线控制模式让系统将其识别为一颗处理器。不过鉴于CPU和GPU功能单元的巨大差异、指令集的完全不兼容性,融合工作的开展是非常艰难的。但是畅想未来的融合发展和应用将因为处理器融合得到巨大性能提升,融合处理器也因此成为业界关注的焦点。

  目前的融合处理器市场上,Intel有自己的Sandy Bridge架构酷睿系列处理器(整合GPU单元),AMD长期准备之后已经发布了APU产品(整合GPU单元为主),NVIDIA正在计划中的麦克斯韦处理器(GPU主动整合ARM架构CPU单元)。不过各家的融合之路都是顺畅,Intel的融合层次过于浅表,AMD的融合处理器没有得到应用环境支撑,NVIDIA的融合处理器还停留在纸面上。


艰难的跨越 融合处理器GPU单元现状分析

  2005年10月25日,在AMD收购ATI后,随即发表代号为Fusion(融合)的研发计划,Fusion预计将AMD的CPU与ATI的GPU整合在一起,同时也将北桥芯片也一并纳入。2008年4月23日,AMD在北京举行了“和谐计算 卓越视界”创新技术大会,更强调CPU与GPU的和谐工作,并提出了APU概念,这是首个融合处理器概念的提出,也是业界争论最终的一种方向。

  毕竟我们在上世纪80年代末看到Intel生产的486处理器开始成功整合了协处理器,协处理器的概念从此消失而变为CPU内部的FPU(浮点处理器)。如果说486时代的融合只是第一次尝试,那么后来业界还是做出了艰难的不断探索。

艰难的跨越 融合处理器GPU单元现状分析
APU概念第一次提出

  进入2008年4月,电脑芯片产业爆发了大规模的口水战,先是Intel在IDF上宣称显卡产业将会消亡,而后NVIDIA CEO黄仁勋宣称GPU将超越CPU的地位,中央处理单元(CPU)与图形处理单元(GPU)之间爆发了激烈的冲突。实际上Intel没有一颗像样的图形单元,或者说Intel忽略了光栅化整个过程在显卡独立之后的飞速发展,造成其现在的困境,而NVIDIA也没有X86授权和X86处理器开发经验,这是一家长期以图形处理器设计为主线的公司。

艰难的跨越 融合处理器GPU单元现状分析

  不过在融合处理器开发方面,资本和技术积累深厚的Intel不知是看到了业界巨变的前兆还是感受到了超级计算机市场来自GPU等高浮点密度计算单元的压力,其Larrabee芯片隶属于Tera-Scale项目,是一块融入的诸多先进技术的GPU。对于图形工业而言,Larrabee是一款具有革命意义的产品,它与常规的意义上的GPU存在理念上的差异,即Larrabee将通用计算性能放在优先位置。

  不过后期呈现在消费者面前的不是Larrabee成品处理器,而是一颗非常简单易行的融合处理器,其融合程度甚至连胶水融合都算不上,两颗Die放在一个基板上,第一颗整合了GPU和CPU的处理器出现了——Clarkdale核心Intel酷睿处理器。

产品:酷睿i7 2600K(盒) Intel CPU 回到顶部阅读

SNB酷睿处理器性能增强

  ● SNB酷睿处理器性能增强

  第一个高喊融合概念的是AMD,同时强大的媒体关注宣传能力几乎让全世界知道了APU将要上演一场变革。不过第一个做出融合处理器的却是Intel,它没有停留在“纸上谈兵”的阶段,在今年年初发布了首款整合GPU图形单元的处理器Clarkdale,这是Sandy Bridge架构酷睿系列处理器出现之前的一次有益尝试。


艰难的跨越 融合处理器GPU单元现状分析
图解Clarkdale处理器

   面对业界广泛的非议和自己对GPU单元多年并不深厚的技术积累,Intel决定用这种抢先发布的方式生产了一颗MCP(Multi-Chip Package)方式对接的处理器。Clarkdale核心包括CPU和GPU两个部分,CPU部分使用了新一代32nm工艺制造,是双核心四线程设计;GPU部分就是传统意义上的北桥,为45nm工艺制造,内含双通道DDR3内存控制器、PCI-E控制器和集成显卡

  在经历了Clarkdale处理器较为松散的融合开发经历之前,Intel已经开始对于传统GMA系列集成显卡GPU的优化工作。从X4500开始,统一渲染单元被称之为“EU”,拥有更好更灵活的SMID执行表现。G45图形核心能够支持DirectX 10以及Shader Model 4.0,其3D性能和频率的相关性很强,我们看到集成在酷睿i5内核中的GPU频率达到900MHz,性能则已经超越了NVIDIA入门级别独立显卡和AMD板上集成显存的785G芯片组。

智能电脑芯 流畅新世界 第二代英特尔智能酷睿处理器【NDA已经解禁】
SNB架构处理器核心架构图

  在这些准备都进行完毕之后,Intel开始了SNB处理器更深层次融合架构尝试。我们可以看到与上代产品相比,SNB的核芯显卡芯片与处理器完全集成在了一起,而内存控制器也进一步进行了集成。

  在SNB中,三级缓存依然延续。其中L1缓存的设计与酷睿微架构相同,而L2缓存则采用超低延迟的设计,而L3缓存也依然采用的是共享式设计。英特尔第二代英智能酷睿处理器的酷睿i3i5i7依然可以通过对超线程技术的支持与否而划分定位。虽然处理器型号不同不过架构基本类似。

智能电脑芯 流畅新世界 第二代英特尔智能酷睿处理器【NDA已经解禁】
SNB核芯显卡架构解析

  上图中可编程着色硬件被称为EU,和X4500的命名方式完全相同。EU包含着色器、核心、执行单元等,可以从多个线程双发射时取指令。内部ISA映射和绝大多数DX10 API指令一一对应,架构很像CISC,结果就是有效扩大了EU的宽度,IPC也显著提升。

  Intel此前的图形架构中,寄存器文件都是即时重新分配的。如果一个线程需要的寄存器较少,剩余寄存器分配给其他线程。这样虽能节省核心面积,但也会限制性能,很多时候线程可能会面临没有寄存器可用的尴尬。芯片组集成时代,每个线程平均64个寄存器,Westmere时代的HD Graphics提高到平均80个,SNB则每个线程固定为120个。SNB里每个EU的指令吞吐量都比现在的HD Graphics增加了一倍。 

艰难的跨越 融合处理器GPU单元现状分析
Intel GMA X4500 架构图

  SNB酷睿处理器融合GPU的目的在目前看来是非常简单明了的,近期来看Intel需要一颗更强大的集成GPU单元来让使用者体会到更好的游戏性能;远期来看Intel需要逐步尝试CPU+GPU融合架构,而GMA系列GPU毕竟有着较为长时间的光栅化积累。

  同时借助Intel强大的半导体技术,SNB酷睿处理器融合的GPU单元拥有极高的运行频率,当然在图形单元显存总线方面,SNB架构没有明确标示GPU单元是挂在内存控制上还是北桥上,不过以目前效率来看Intel的表现的确是让人满意的。

产品:A8-3800 AMD CPU 回到顶部阅读

APU融合处理器兑现目标

  ● APU融合处理器兑现目标

  在经历了2005年的Fusion概念提出和2008年的APU产品提出之后,AMD进入了相当长时间的艰苦开发周期,而在这一周期内又经常放出很多备受关注的架构图和各类模拟测试数据,所以对于笔者这样的工作来说,APU发布的更多概念其实是兑现承诺,告诉世人APU开发计划并没有胎死腹中。

  作为AMD的全新产品,其在命名上也突破了传统,APU全称是“Accelerated Processing Units”,中文名字叫加速处理器,是AMD融聚理念的产品。之前显卡频道对于APU整合GPU单元的意义已经做过较为全面的分析,所以本为仅是对APU图形单元的构成做一些回顾并且提出自己的看法。


艰难的跨越 融合处理器GPU单元现状分析
APU架构分析

  简单看上去APU就是整合了传统CPU单元、内存控制器、Radeon图形处理器的融合处理器。而实际上其融合程度在目前来看还是较为可观的,主要原因是GPU和CPU共享内存控制器,这就比单纯把GPU放在PCI-E总线上要减少很多延迟。

艰难的跨越 融合处理器GPU单元现状分析
APU微架构与总线控制器

  Llano APU内部整合了一个双通道DDR3内存控制器,单条DDR3内存是64bit双通道就是128bit,基本上可以满足主流独显的位宽要求。但是用户需要购买双通道内存才可以组建128-bit内存控制器以提升APU带宽。CPU和GPU合用的话可以最大化资源利用,这种融合方式让GPU不在使用自己独立而不可占用的显存控制器。同时北桥允许GPU用高于显存带宽的吞吐量访问系统内存,这也是一个重要的架构亮点。

艰难的跨越 融合处理器GPU单元现状分析

  APU的图形单元实际上就是Radeon HD 5000所使用的Redwood独立GPU核心去掉显存控制器后剩下的单元。Redwood核心其由6.27亿晶体管构成,拥有400个流处理器、8个光栅处理器和20个贴图单元。核心能够完整支持DirectX 11 API和Shader Model 5.0,也就说其不仅在3D表现上能够完美呈现DirectX 11所带来的图像渲染技术,还能够完整实现DirectX 11新加入的Tessellation、Computer Shader等,而APU所提出的异构加速也正是基于Computer Shader和OpenCL的帮助。

  对于一个精通硬件架构的爱好者来说,APU目前还不能算作是较为深入的融合架构,虽然APU做出了跨越性的思维方式和其他跨越性设计,但是GPU显存的控制、GPU与CPU高效通信、GPU与CPU内存统一定址等问题还需要用更深层次的融合架构来解决。

产品:GeForce GTX 560 nVIDIA 显示芯片 回到顶部阅读

逆向融合之麦克斯韦

  ● 逆向融合之麦克斯韦

  相对于Intel、AMD这些传统的CPU厂商,NVIDIA对于问题的思考明显要更复杂一些,这是一家没有X86授权的无工厂芯片设计厂商,也是没有开发出CPU成品的公司。不过NVIDIA最近几年的动向已经说明了一些浅显的发展方向,手机处理器Tegra的开发就是重要例证。


艰难的跨越 融合处理器GPU单元现状分析
Tegra处理器架构简图

  Tegra的前身是2008年2月NVIDIA发布的用于智能手机与PDA平台的APX 2500应用处理器。NVIDIA在台北举行的ComputeX 08大会上,正式发布了针对MID、手机等移动互联设备的处理器——Tegra,这也是NVIDIA推出的第一款CPU产品。Tegra是一款系统单芯片。内建ARM架构的处理器核心、基于GeForce的立体显示核心、影像处理器、音效处理器和图像处理器。

  值得注意的Tegra由于其低功耗特性并不适合PC图形处理,不过Tegra是NVIDIA第一次进行成功的GPU设计。和以往专注于视觉图形处理器不同,Tegra是一款通用处理器,基于ARM 11架构。ARM公司负责出售框架IP,NVIDIA在买入IP之后自行开发了这款处理器。

艰难的跨越 融合处理器GPU单元现状分析
ARM 11架构处理器

  在进化到V7核心之后,为了取得更好的性能功耗比,ARM构架抛弃了冯诺依曼结构,全面转向了哈佛结构。哈佛结构的数据和指令总线是分开的,分开的总线使得一些在冯诺依曼结构中必须串行执行的操作,比如load/write可以并行执行,这虽然提高了系统的执行效率,但也使得ARM构架对内存带宽变得更为敏感,甚至还对内存并联度提出了新的苛刻的要求。

NVIDIA的融合之路 GTX700探秘
Denver核心构架

  所以说对于未来融合处理器的定位偏向图形计算,加之强大的ARM也需要强大的内存带宽支撑,这些因素促使NVIDIA选择了逆向融合技术——把CPU单元挂在GPU强大的显存控制器上。

  目前一颗酷睿i7处理器搭配三通道DDR3 1066内存(共计192Bit显存带宽),可以获得25.5GBs的存储子系统带宽,而融合处理器如果使用双通道或者廉价的单通道设计,GPU挂在CPU内存控制器上仅能获得15-25GBs带宽。反观目前的民用千元级显卡,一款常见的Radeon HD6850显卡即可通过256Bit显存控制器获取到128GBs带宽,GTX580级别显卡更是拥有将近200GBs带宽,CPU性能可以得到充分释放。

产品:A8-3800 AMD CPU 回到顶部阅读

融合处理器硬件障碍难清

  ● 融合处理器硬件障碍难清

  融合处理器目前拥有很多架构方面的障碍,让我们从最先推出结构最简单的SNB架构酷睿处理器开始进行对比。首先Intel本次集成在CPU内部的GPU单元虽然性能较好,但是其基于上一代统一渲染架构演化而来,所以无法实现众多功能。


艰难的跨越 融合处理器GPU单元现状分析
HD Graphics 3000架构简图

  通过AMDIntel两家核芯显卡的对比我们可以看到,AMD的核芯显卡最大优势在于支持DirectX 11,这是Intel的HD Graphics 3000所无法达到的。另外,AMD APU还支持OpenCL标准,可以通过异构计算来使处理器和显卡进行融合协同运算,从而达到更好的性能,HD Graphics 3000在并行加速方面目前几乎无解决方案。

  我们已经分析了显存带宽对于GPU性能的影响,那么对应到具体硬件来分析我们可以获知APU的CPU和GPU部分共享内存控制器之后,就涉及到争抢带宽的问题,实际分配到的带宽要比理论值低,尤其是在CPU和GPU负载都很高的情况下。

艰难的跨越 融合处理器GPU单元现状分析
APU内部通信能力分析

  对于这种情况AMD也采取了相应的措施,首先APU的GPU单元直接挂在系统内存总线上避免绕道北桥以及PCI-E进行带宽分享,其次虽然通过DDR3内存只能获得最大29.8GB/s带宽但是GPU还是可以有一个快速通道获得大于29.8GB/s的通信带宽。

艰难的跨越 融合处理器GPU单元现状分析
APU提升内存带宽后性能测试

  但是国外媒体通过实际测试得到的结果已经充分说明了APU在内存带宽方面的饥渴,拥有400个流处理器的HD6550D和拥有160个流处理器的HD6450性能基本相当,而通过提升内存带宽到DDR3-1866之后,APU实际性能已经接近同规格的独立显卡

  由此看来在内存带宽严重受限的情况下,为了通信便捷将GPU挂在CPU二级缓存上或者更深层次的融合是正确选择,但是为了彻底解决GPU对带宽的较高要求,或许NVIDIA提出的逆向融合方式才是正解。值得一提的是Intel的Larrabee计划和AMD下一代独立显卡也已经出现了将低功耗CPU整合在GPU之内的意向。

产品:A8-3800 AMD CPU 回到顶部阅读

异构计算应用环境之疑问

  ● 异构计算应用环境之疑问

  针对各家硬件厂商提出的融合处理器硬件架构,业内拥有大量可以用于实际工作的融合处理器应用软件和使用环境,这包含大量富含矢量操作的图形图像处理软件和影响力较为广泛的API应用程序接口。


超越图形界限 AMD并行计算技术全面解析
OpenCL标准所提倡的CPU-GPU异构计算

  首当其冲的是AMD努力倡导的OpenCL开放性编程环境。OpenCL (Open Computing Language,开放计算语言) 是一个为异构平台编写程序的框架,此异构平台可由CPU,GPU或其他类型的处理器组成。

  虽然有着完全开放的标准来保证高效的融合处理器编程,但是目前我们依然看到太多问题,笔者有一个观点:任何工作都能胜任的API什么都干不好。原因是OpenCL开放的编程环境还需要各家厂商针对自有硬件的编译器,而AMD在放弃Brook+之后暂时没有合适的编译器提出,所以纵然有OpenCL提供大环境,但是AMD依然没有获得较为广泛的厂商支持。

艰难的跨越 融合处理器GPU单元现状分析
AMD艰难推广并行加速APP应用程序

  目前我们能够看到的一些基于OpenCL的应用程序大多是基于ATI Stream整套解决方案开发的。ATI Stream技术定义程序可以被分为两种,也就是图中的库,以及第三方代码。库可以直接转化成brook+,第三方代码则需要通过stream编译一下。编译好的东西可以直接丢给CPU或者GPU算。

超越图形界限 AMD并行计算技术全面解析
ATI Stream技术软件环境

  其中绿色的是计算抽象层规则。这张图片说明ATI GPU可以通过计算抽象层规则直接运行程序,也可以通过OCL来支持应用程序,也就是说OCL只是其中一种选择。实际上AMD倒向OCL,应该也有打算让自己以第一的身份接近OCL制定者并影响对方甚至施压的意思。CUDA和Stream都是编译环境,而OpenCL跟DirectX都是API。

  所以说OpenCL的又一大重要原因就是其开放性导致其对每一代的硬件系统没有制约性和指导性。我们研究微软的DirectX应用程序接口发展历程发现AMD和NVIDIA都小心翼翼地针对DirectX接口开发硬件,如果自己的硬件有不合理的设计则会导致效率低下。而OpenCL不对硬件提出要求,硬件厂商无法看到对其优化能带来任何性能提升,所以也没有支持欲望。

 

频道热词:华硕主板  Intel  AMD  
视觉焦点
AMD A8-3800
  • 商家报价:
  • 厂商品牌:AMD
  • ZOL评分:0
  • 网友口碑:0
  • 查看详细>>
显卡评测热点
排行 文章标题
TOP10周热门CPU排行榜
  • 热门
  • 新品
查看完整榜单>>