E X P
  • 编辑
  • 评论
  • 标题
  • 链接
  • 查错
  • 图文
  • 拼 命 加 载 中 ...

    ◆ 遭遇工艺困境 多GPU并行渲染技术的诞生

      纵观最近一年以来PC图形子系统的发展经历,已经可以明显感觉到工艺制程成为了制约GPU发展的一大瓶颈,SLI技术CrossFire技术成为解决这个问题的有效方法。

      通过上面两张图我们可以得知,由于DX10和统一渲染架构,以及GPU换代时本身对性能的要求,新一代DX10高端硬件的面积和晶体管数量都达到了惊人的水准。并且在提升幅度方面已经明显超过历代产品升级换代。

      但是,向晶体管要性能这种手段几乎已经行不通了。半导体工业进入纳米时代之前,摩尔定律基本上都符合导体业在客观上所能达到的更新速度水平。可以说在常规宏观科学领域的范畴内摩尔定律是基本准确的,但由于戈登·摩尔博士并设有预见到当集成度与微观世界发生联系定律会遇到如此多的问翘。随着“亚微米屏障” 的出现,大量的物理化学定律在微观领域中失效或被改写,此时的材料学作为半导体业的支撑需要一个缓冲,以完善今后发展所需的基础并寻找发展方向。只有当这个缓冲足够充分时,材料学才能积累足够的学术储备, 继续像上个世纪那样为半导体业提供坚实的理论基础。因此,至少从现在起相当长一段时间内,摩尔定律的维系都将面临来自材科学方面相当大的困难。以NVIDIA为例,其产品一直以近平疯狂的速度追逐着摩尔定律,晶体管数从TNT(NV4)的7M到GeForce256(NV10)的23M,再到GeForce3(NV20)的57M,然后到GeForce FX 5800(NV30)的125M和GeForce 6800(NV41)的190M,到GeForce 8800(G80)后更是达到了惊人的681M,是上代产品GeForce 7900(G71)的2倍多。NVIDIA一直以12个月为单位的速度提升着自己产品的晶体管数量,NV30时终于遇到了问题,尽管最后通过lLD(Inter LaYer Dielecric,深埋绝缘层)艰难地度过了难关,但依然对整个产品线造成了严重的影响。

      ATi在这方面也吃过不少苦,庞大而性能更加均衡出色的Radeon X1900(R580)被芯片小它一圈的GeForce 7900(G71)在市场中打败就是典型例子。

      而另一方面,游戏和专业图形制作又对PC的图形子系统的性能提出了前所未有的需求。在游戏和专业图形制作的一个普通场景中,系统需要源源不绝动态处理大量的3D物体,系统需要计算它们在下一帧中的表现状态。这些物体都是通过成千上万个三角形构成的,尽管物体后面的三角形会被前方的遮挡,但当表现到屏幕上时,它们还是要被进行计算。同时分辨率也是制约性能的重要因素,在1600x1200的分辨率下,需要描绘1,920,000个像素。纹理贴图、vertex和pixel shader程序这些工作都要在至少六十分之一秒内计算完毕,这样才能保证实时渲染地顺畅进行。这时系统性能的高低取决于一次能处理多少任务,而不是处理一个任务有多快。3D处理程序如何在现有技术和制造工艺的产品下实现看起来“不可能的任务”。

      游戏玩家和狂热的硬件发烧友对3D性能的追求却是永无止境的,如果要绕开工艺制程和成本两方面的限制而大幅度的提升显卡性能,多GPU并行工作的图形渲染技术是最佳选择。实际上,NV和AMD就是这么做的,在明显脱离历代高端发展规律的G80和R600之后,NV和ATI都选择了用多块次顶级芯片来构筑旗舰平台的做法。

      按照AMD的说法,其旗下的下一代图形芯片R700甚至采用了完全的模块化架构,只有一种基本的核心,依照不同定位有1-4颗进行不同的搭配。离我们较近的,如AMD R680和Nvidia D8E,也将采用多GPU架构。实际上,把2颗或者多颗较小的中高端芯片做到一起,不论是成本还是研发风险,都要比做一颗单颗的旗舰芯片要划得来,而且研发的周期也将大大缩短,统一的型号也将有简化产品线,将公司资源集中于其他更加必要的领域,提高竞争力。

      正因为NV和AMD在降低成本和工艺压力的问题上有上述共识,因此从某种程度上来说,联合多颗GPU并行渲染的技术将是影响未来高端产品的关键技术。而在多GPU单PCB显卡尚未进入普及应用的时候,可以采用NV的SLI或者AMD的CrossFire双卡并联技术组建强劲的3D系统,哪么到底哪一种组合方式更加优秀呢?

    [回顾] SLI续写3dfx的传奇 从Voodoo到NV40

      相信对PC技术感兴趣的用户都不会对SLI双卡互联技术感到陌生,SLI 全称是Scalable Link Interface(可升级连接界面),它是nVIDIA公司于2004年6月28日推出的一种革命性显示技术,这种技术通过一种特殊的接口连接方式,能让多块SLI-Ready GeForce显卡工作在一块nVIDIA SLI-Ready nForce主板上,智能化地提升系统图形性能。

    通过专用的线缆连接起来的两片Voodoo2显卡。

      其实双卡互联技术并不是在2004年才出现的,早在3dfx时代,并联方案就已经出现。还是3D显卡刚刚问世的年代,在经历过Voodoo的辉煌之后,1998年初,3dfx推出了它的第二代3D图形卡产品Voodoo2。Voodoo2具有90Mps的像素填充率,支持Z-Buffering、Anti-Aliasing、单周期双纹理等当时最先进的3D特性,其性能大幅超越其上一代产品,更是将其他对手更是远远甩在了身后。但是最令人兴奋的不仅仅是Voodoo2的性能,而是其所特有的,具有划时代意义的“SLI交错互连技术”。Voodoo2的这项技术,可以让两块Voodoo2显卡并行运行,连接起来进行并行运作,就能够获得近乎翻倍的3D效能。

      在Voodoo2之后的Voodoo3,3dfx没有效仿这个SLI双显卡技术,但在Voodoo4/5/6时代,3dfx重新恢复了SLI,但应用的形式已有所区别。Voodoo2倡导双显卡并行运作,两块显卡插在PCI槽里再用专用的线缆连接起来,但这并非必需的,单个Voodoo2显卡也可以独自工作,只是速度较慢而已。2000年春,3dfx推出VSA100图形芯片,当时nVIDIA已经压过3dfx成为领先者,为了夺回自己的领导地位,3dfx让SLI技术重装上阵。VSA100可支持单芯片、双芯片和四芯片并行运作,单芯片版本就是Voodoo4,双芯片显卡为Voodoo5 5500,而四芯片显卡则是著名的Voodoo5 6000。此时,SLI技术演变为单显卡多图形芯片的形式,不需占用两个插槽,但内部的工作机制并没有发生多大的变化,依然是通过划分渲染帧的方式各自执行,然后在帧缓冲中统一合成。出于众所周知的原因,这些显卡都没获得广泛认可,3dfx也从衰落走向死亡。2001年初,nVIDIA收购了3dfx,SLI技术也随之成为了历史,尽管nVIDIA掌握了3dfx的所有技术,但它并没有将之发扬光大,而是继续按照自己的道路走下去,收购3dfx的目的也许只是消灭一个竞争对手而已。

      在这之后,我们看到了nVIDIA顺利一统江湖,接着就是ATi逐渐发起挑战,GeForce和Radeon是人们最常挂在嘴边的名词,至于3dfx和它的SLI已经逐渐被人淡忘了,即便偶尔有人谈起,也多是说那是一个策略糟糕的企业和一项昂贵不切实际的技术。在显卡的历史中,除了Voodoo2之外没有哪一项多显卡、多芯片技术曾获得成功,虽然ATi尝试过,新生的XGI也勇闯该领域,然而事实证明这个方案并不受用户们的欢迎。不过,谁也没有想到nVIDIA重新拾起3dfx的SLI技术。2004年6月28日,nVIDIA大张旗鼓发布了“SLI Multi-GPU技术”,并将该技术引入最新发布的GeForce 6800和Quadro FX4000系列显卡上。沿用“SLI”这个名称或多或少让人联想到3dfx,nVIDIA想要的也许正是这个效果,它更希望被用户认为是3dfx技术的一脉相承。但如果我们深入分析,便会发现它与3dfx的SLI技术没有多少相同的地方,基本上就是一套nVIDIA新搞出来的多显卡方案。

    [技术] nVIDIA SLI技术解析

      SLI技术是实现了两款显卡同时出现在一块主板上,构成一套SLI双显卡并行系统,这一技术的应用更大程度的满足了用户对高品质画质的需求。

    SLI桥接器。

    通过SLI桥接器连接的两片GeForce 7950 GX2显卡。

      如图所示,我们可以看到,nVIDIA的SLI互连不再是和Voodoo2一样借助线缆,而是使用一块两端有“MIO”接口的PCB连接子卡。卡上的接口有点儿类似PCI Express×1,而在显卡的顶部位置则预留了对应的接口。这样,该SLI连接卡就可以将两块nVIDIA显卡连接起来,实现SLI并行运作。nVIDIA官方表示,选择PCB卡连接可充分保证信号通讯的质量与速度,显卡间的数据传输采用数字形式进行,这样可有效防止因信号干扰而导致画面不同步的弊端(nVIDIA已经公布了可用驱动支持nVIDIA GeForce 6600标准版组建SLI系统,而这种新型的SLi系统无需通过连接卡便能实现)。Voodoo2所采用的技术是模拟传输方式,数字信号先被转换为模拟信号后才进行合成,因为干扰的影响,在某些时候会出现数据不匹配的问题,导致合成后的画面往往难以同步或出现其他问题,这也是Voodoo2 SLI技术的主要缺陷。而改用数字信号传输,显然就不存在这个问题,显卡处理完的帧数据被集合起来合成,然后才转为模拟信号输出,从而确保画面的完整性。


    NV40核心内的SLI功能控制逻辑

      nVIDIA将SLI控制功能直接的集成到在显卡的GPU芯片内部,从上图的芯片的逻辑图中可以很容易的看到,在显示核心的左侧左侧偏下的位置有一个很小的区域专门负责SLI运作,该区域所掌管的职能包括两块显卡的连接、通讯,渲染任务的指派以及画面的合成等等。由于指令的传输工作相对简单,在芯片的FCBGA封装中也只有极少几根针脚用于SLI模式。但由于别的GPU并没有集成这一控制逻辑,所以别的显卡并不支持这一技术,但由于特殊的原理的所以SLI技术并不支持AGP总线,SLI技术只可运行在PCI-E模式下,对主板提出了新的要求。不过最令人称奇的还是它的并行能力,nVIDIA的研发专家声称,SLI技术最多可以支持8块GPU并行运作,虽然在消费市场没有什么意义,但在工作站领域,8块GPU并行意味着可获得超高的渲染效率。

      以上介绍的只是SLI最表象的特征,真正的关键在于这套系统的运作机制。SLI的两款显卡地位并不是对等的,一块显卡作为主卡(Master),另一块则作为副卡(Slave)。其中主卡负责任务指派、渲染、后期合成、输出等运算和控制工作,而副卡只是接收来自主卡的任务进行相关处理,然后将结果传送回主卡。这里,我们需要明确数据传送的两个途径。两块显卡都是通过PCI Express接口与主板连接,而这两块卡之间还有一个通讯的PCB卡。其中,连接两块显卡的PCB卡用于任务指派指令以及后期处理结果的传送,这部分的数据量不会很大,所以PCB卡所使用的接口和自身结构都较为简单。但是,显卡在渲染过程中必须调用大量的数据,这部分数据只能通过PCI Express接口从系统中获取。换言之,在SLI系统中有两部分不同的数据流向,一部分为主卡将任务指令通过PCB连接卡传送给副卡,副卡将渲染完毕的结果数据返回给主卡合成,另一部分为处理过程中从PCI Express接口得到的原始数据。


    Voodoo2的传统奇偶分工方式

      Voodoo2的SLI技术采用帧线方式划分任务:一幅渲染的画面被分成奇数渲染帧和偶数渲染帧两个部分,然后交给两块显卡分别渲染,完毕之后再统一合成。虽然nVIDIA继续沿用了“Scalable Link Interface”的名号,但工作的方式已经有本质性的不同。在nVIDIA的SLI系统中,一幅渲染的画面被划分为上下两个部分,主显卡完成上部分画面,副显卡则完成下半部分的画面,然后副显卡将渲染完毕的画面传输给主显卡,主显卡再将它与自己渲染的上半部分画面合成为一幅完整的画面。这样,一个完整的SLI并行渲染任务就完成了。同理,倘若有四块GPU并行运作,那么画面会被分成四个部分分别渲染,8个GPU并行也是如此。


    nVIDIA SLI的智能分工方式

      传统的多GPU技术多半采用任务均分的方式,两块显卡完成的渲染任务量完全均等,Voodoo2的SLI及之后的Voodoo 5系列都是如此,ATi的MAXX显卡和XGI的Volari Duo系列产品也是采纳类似的思想。但这种任务均等分派的设计并不科学:首先,主显卡或主GPU必须承担额外的控制、任务分配、画面合成和输出等工作,用于渲染的运算资源较少,但它必须完成与副卡一样多的任务。结果自然是,副卡率先将任务完成,把结果数据回传后便处于等待状态,直到主卡将本批次任务处理完毕之后才可以继续进行任务指派;第二,同一幅画面不同区域的复杂度并不相同,所需的运算量也不一样,如果使用Voodoo2的帧线划分方式那也没什么,但nVIDIA的SLI采用划分上下画面的方式,如在常见的赛车游戏中,画面上半部分几乎是静态的,而下半部分就非常复杂,需要处理的数据量很大,如果单纯将画面作均等的划分也不科学。

      为此,nVIDIA另行开发了一套动态负载平衡技术,画面的上下划分并不是按照固定的一半一半方式,而是根据画面的复杂情况进行划分,如可能为4:5或3:2等非均等的模式。这样的分配并不是为了保证工作量在两块卡间的绝对平均分配,而是要将两块显卡完成渲染任务的时间保持一致,以此达到效能的最优化。考虑到主显卡需要承担额外的控制任务,用于实际渲染运算的资源较少,动态负载平衡算法就可以根据这一前提,将任务量适当多给副卡分担。这样,nVIDIA所构建的SLI系统就可以保证两块显卡都工作在最佳效率条件下。要提到的是,这项动态负载平衡算法并不是集成在GPU芯片内部,而是在驱动程序中整合,nVIDIA可以方便对其进行修改,以提供更佳的性能。

      以下是这种动态负载平衡技术进行均衡的多种渲染的过程:


    1.待渲染的画面被分成上下两部份


    2.渲染完毕后统一交给主卡进行合成


    3.主卡将合成后的画面输出到显示器

      但是,这种动态平衡技术并非万能的,nVIDIA SLI的无法支持在不同的显卡间构建并行系统,而两块显卡协同工作时上下两部分画面的V-Sync(垂直同步)也是一个问题,如果打开该功能势必会对游戏性能产生一定的影响,不过nVIDIA表示已采用缓存技术来解决这个问题,另外建立SLI工作模式后的两块显卡也都支持超频,但必须使两块显卡的频率完全保持一致。

      nVIDIA在推出SLI技术时就受到了人们的关注,客观上地说,Multi-GPU的确是一项可以切实提升图形显示性能的技术,它通过双卡并联输出,其理论图形性能可得到将近一倍的提升,游戏爱好者可以充分体验到这种速度提升快感,而对于专业设计人员来说,SLI也将带来效率的翻倍也使得渲染工作的时间几乎可缩短一半。

      通过这种先进的SLI技术我们可以得到几乎翻倍的图形显示性能,把它引入实际应用也不再不切实际了,它不再像以前组建Voodoo2 SLI那样昂贵,普通消费者也可以轻易体现到这种先进的技术,这一方面是因为受到ATi Crossfire带来的压力,而对于长远来说,nVIDIA可以在负载平衡算法以及核心开发上下功夫,这种SLI技术和市场定位也要不断演变,让更多的消费者都能轻易组建自己的SLI系统,例如使新旧显卡一起工作在SLI模式下,用户升级时不用抛弃旧显卡而只需购买一张更快的显卡来构建SLI系统。SLI的发展前景是光明的,要是能使SLI普及化,将会对整个显卡市场产生深远的影响。

      不过,在nVIDIA刚推出这种双卡并联技术时,作为普通消费者的我们是可望不可及的,因为早期支持开启SLI模式只有Geforce 6800等高端显卡,另外支持SLI亦要使用唯一的nForce4 SLI芯片组平台,整套配置成本上是相当昂贵的。因为高姿态的SLI技术对于一般应用实在是不切实际,所以在SLI面世一年后,来自各方面的压力,NV终于走下神台,通过更新驱动,SLI双卡模式在中低端的显卡产品上都能实现,SLI从此普及起来。

      在SLI推出初期,硬件上实现SLI其实并不是问题,但是对于当时来说,对应支持双卡加强输出的大型图形处理软件和游戏等都屈指可数,软件未能普及支持SLI技术也是阻碍SLI前进的一大关键因素,直到进入2005年下半年,业界才逐渐推出针对SLI优化的程序和游戏,如经典的3DMark06、Quake4、F.E.A.R等都是可对应SLI加速的软体和游戏,而到如今2007年,支持SLI技术的软体不断增多,SLI也越来越普及了。

    [技术] SLI常见问题及答案

    SLI是什么?其工作原理是什么?
    SLI(可灵活伸缩的连接接口)是一项旨在实现高性能的技术,让用户可以通过在一套系统中配置多颗nVIDIA GPU,巧妙地组合并提升图形芯片的性能。SLI的工作原理是以一种智能化的方式提高两颗GPU的几何和填充率性能。

    该技术与3dfx的SLI有何不同?
    nVIDIA SLI在许多方面都与其大不相同。第一,3dfx SLI是在基于PCI架构的共享总线上实现的。PCI总线的总线吞吐量约为100MB/s,而PCI Express则是一种点到点接口,可提供约60倍于PCI总线的总带宽。第二,3dfx SLI执行隔行扫描,属于模拟应用,因此可能由于数模转换差异和其他因素等造成图像质量欠佳。此外,3dfx Voodoo技术仅执行三角形设置,需要由CPU完成几何运算,因此3dfx SLI只能提高简单纹理填充率的性能,并且该技术利用的是帧间灵活伸缩性。nVIDIA SLI技术则是基于PCI Express技术,采用一种完全数字化的帧组合方法,对图像质量无任何影响,可提高几何性能,支持多种实现灵活伸缩性的算法,能够根据应用需要选用最有效的方法来实现灵活伸缩性。

    SLI技术是否支持AGP架构?
    不。SLI技术是专门针对PCI Express架构而设计的。这种新的总线拥有更高带宽(为AGP 8X的两倍至四倍),支持同步数据传输,并可驱动多台高速图形处理装置。而AGP 8X则仅可驱动一台高速图形处理装置,因此不太适用于SLI。

    SLI 桥接器的功能是什么?
    SLI 桥接器是GPU 之间的专用连接工具,可传输同步、显示和像素数据。SLI 桥接器可使GPU之间的通讯速率最高达到1GB/s, 同时不会占用PCI Express 总线的带宽。SLI 桥接器适用于GeForce 6600 GT 以及更高版本的产品。对于其他所有SLI-Ready 图形显卡,GPU 之间的数据通讯都是通过PCI-Express 总线,而不是通过SLI 桥接器。对于这些主流GPU,PCI-Express 总线通常有足够的带宽来对额外的通讯进行有效地管理。功能更强的GPU (GeForce 6600 GT 以及更高版本的产品)需要SLI 桥接器来实现最佳的缩放效果。

    SLI 技术可支持哪些操作系统?
    SLI技术可支持32位和64位Windows XP/Vista以及32位和64位Linux操作系统(IA-32 和 AMD-64/EM64T)。

    SLI 技术可支持哪些应用程序?
    SLI 可支持所有游戏程序,包括OpenGL 和Direct3D 游戏程序。SLI 能使用SLI 交替渲染(AFR)或分屏渲染(SFR)实现3D 伸缩性能,或能使用SLI 反锯齿模式实现增强的视觉效果。

    为什么不是所有的游戏都通过SLI得到效能提升?
    使用SLI 技术后,图形芯片所运行的应用程序的性能可得到空前的提高,最高可达以前的两倍。当今最热门的游戏和新一代游戏都属于此范围。然而,有些应用程序、典型的老一代应用程序受到图形芯片处理能力之外的因素限制。

    最常见的限制是受CPU 束缚的应用程序。如果应用程序受到CPU 束缚,增强图形处理能力也无法提高性能。在1024x786 低分辨率下,无其他功能开启,此情况最为常见。打开反锯齿和各向异性过滤器,或切换到更高的分辨率,常常可以让瓶颈回到GPU 上。

    对于受CPU 性能影响较大的应用程序,nVIDIA 提供一种新的SLI 渲染模式,即SLI 反锯齿。此渲染模式可使客户激活SLI8x 或SLI 16x 反锯齿,并增强所有游戏程序的视觉效果。

    什么是SLI抗锯齿技术?
    SLI抗锯齿技术是一种全新的独立式渲染模式,通过由两片显卡分担抗锯齿处理任务,将抗锯齿性能提升至两倍。启用后,SLI抗锯齿可提供2种全新抗锯齿设置:SLI8x 和 SLI16x。

    基于SLI的系统是否支持输出至电视机或高清电视机?
    支持。SLI系统可将信号输出至标清电视机和高清电视机。

    在SLI 模式下,屏幕上出现的绿线是为什么?
    如果屏幕上出现纵向或横向的绿线,表明激活了nVIDIA 显示控制面板中的“显示GPU 负载平衡”。激活此选项后,将显示您的GPU 如何分配图像负载。对于使用AFR(交替渲染)进行渲染的游戏,纵向线条将根据缩放的总量变粗或变细。对于使用SFR(分屏渲染)进行渲染的游戏,横向线条将上下移动,以显示负载如何在各个GPU 之间获得平衡。如果屏幕的上半部分和下半部分情况相似,横向线条将保持在屏幕中间位置。
    注意:如果同时启用了Vsynch,则可能不会显示这些线条(并不表示未启用SLI模式)。

    不同品牌的图形显卡是否能在SLI模式下兼容?
    当前的nVIDIA 驱动程序已经可以在SLI 模式下支持两个不同品牌的图形显卡,客户需要匹配GPU 模式类型。

    能否将一片由制造商进行了超频的显卡与标准显卡进行混合配置?
    可以。

    能否混合配置显存规格不同的显卡?
    虽然建议用户最好不要这样配置,nVIDIA支持用户借助Coolbits实现这种配置。在购置第二片显卡时,用户应当尽量选择与已有显卡具备相同规格显存的显卡,以便获得最佳价值和最优性能。例如,如果原有的显卡是GeForce 8600 GT 256MB,那么新买的显卡最好也是GeForce 8600 GT 256MB。不过,利用Coolbits,用户可以将两片显卡均设置为使用其中规格较低的显存并以SLI模式运行。

    SLI能不能支持两片以上显卡?
    SLI 技术并不局限于只使用两片GPU,在CES 2006展会上,nVIDIA已经展出了支持4颗而不是1颗、2颗或3颗GPU的四重SLI技术,而3-way SLI和混合SLI技术也将在近期公布。

    [回顾] 从曙光女神到交叉火力

    ATi的Rage Fury MAXX显卡。

      其实不只是3dfx与后来收购它的nVIDIA才有双卡互联技术,ATi的Rage FURY MAXX也是有关类似的方案的。资深一些的DIYer一定对当年ATi的Rage Fury MAXX记忆犹新,这款显卡在一块PCB板上采用两块Rage 128 pro芯片协同工作。虽然它是一种单显卡形态,但与Voodoo2 SLI、Metabyte PGC方案并没有本质性区别,都是两颗芯片“分工合作”实现性能大幅提升。不过在具体的任务指派机制上,Rage FURY MAXX又有不同:它没有采用画面分割、分别渲染、合成的套路,而是让一颗Rage 128 Pro芯片渲染第一幅画面,另一颗Rage 128 Pro芯片渲染第二幅画面,完成之后第一颗芯片再渲染第三幅画面,依此类推。相比前两者,Rage FURY MAXX的好处是只需用到一条AGP槽,但付出的代价是单块显卡高昂的价格!

      在开发之时,Rage Fury MAXX被ATi寄以厚望用以与GeForce 256进行对抗,这一点从其名字中就可以看出来——“MAXX(曙光女神)”是美国空军秘密研发的高超音速侦察机的名字,据说它采用一种全新的推进技术,可以在6万多米的高空上以8马赫(8倍音速)的速度飞行。ATi认为他的新显卡将没有对手,采用这个名称名副其实。Rage Fury MAXX可以说开创了单PCB双核芯的先河,但是由于市场的不成熟,还有Rage Fury MAXX上复杂的AGP桥接架构,以及当时操作系统和软件支持上的不足,Rage Fury Maxx在双核心市场中也只是昙花一现而已。

    simFUSION 6000工作站显卡,采用双PCB,每个PCB上集成2个Radeon 9800芯片。

      2003年,正是ATi的Radeon 9800系列风光无限的时候,但是他在多卡互联的探索并没有停止,上图的这款产品,就是ATi连同Evan & Sutherlands的推出的simFUSION 6000工作站显卡,集成了多达四颗Radeon 9800芯片,采用双PCB连接、每个PCB上集成2个核心,后期甚至还推出过采用四颗Radeon 9800 XT芯片的类似产品。在同一年,Sapphire(蓝宝)也展示过一片采用Radeon 9800 Pro芯片的单PCB双GPU的的工程版显示卡。

      在多卡互联的探索上,ATi的脚步并不比其他厂商落后,只是限于技术和市场的接受程度,ATi早期很少在家用市场涉及类似的产品。随着近年来对3D图形性能需求的快速发展以及GPU发展遭遇瓶颈,并且加上竞争对手nVIDIA的SLI技术带来的巨大压力,ATi终于在2005年6月发布了名为CrossFire(也就是所谓的“交叉火力”简称“交火”)的双卡互联技术。

    ATi的第一代CrossFire。

      第一代CrossFire应用在Radeon X800或者X850显卡上,对应的Radeon Xpress 200 CrossFire主板拥有2个PCI Express X16插槽连接两块显卡,两块显卡将会通过专用的数据线通过DVI-I接口连接到一起,然后从属显卡的数据将会输出到另一块主显卡上,最终合成并输出到显示屏,一些多GPU渲染模式也会被相应实现。

    ATi第二代的Radeon X1900 CrossFire。

      为了解决第一代CrossFire高分辩率限制的问题,ATi把新一代Radeon中低端显卡家族的CrossFire技术改良了,并不需要采用Compositing引擎,也就是说不通过专门的信号通道,而是直接通过主板的PCI-E带宽传送数据实现CrossFire。而在高端显卡的CrossFire方面则通过改进Compositing引擎来将最高分辨率提升至2048x1536。

    目前第三代的CrossFire已经取消主副卡之分,两片显卡通过交火连接桥进行连接。

      在经历过两代CrossFire后,ATi从RV570开始将双卡互联引擎集成到图形核心内(也就是原生CrossFire),也从这一代的交火技术中,不再有主副卡之分,通过交火连接桥将两片显卡顶部交火接口的金手指连接起来,ATI的两个桥接器可以实现24bit(12bit×2)、350MHz的传输速率,另外要注意的是,ATI留有了两个交火金手指接口,单独只插一个桥接器不能够组建CrossFire。新的交火技术不仅为我们带来了更加简便的连接方式,同时在成本、性能方面都有了不小的改善。

    [技术] CrossFire的渲染模式

      与SLI相比,ATi推出的CrossFire最具争议的一点莫过于主从卡的设计,在CrossFire系统中,用户需要一块主卡和一块从卡,通过主卡上特有的控制芯片分配渲染任务,实现双卡共同协作运行。但就架构而言,CrossFire无疑比SLI更先进,不仅是基于硬件的资源分配比基于软件的更高效,而且CrossFire可以实现的渲染模式更灵活,它可以支持交替页框渲染(Alternate Frame Rendering)、页框分离渲染(Scissor)和瓦片分离渲染(SuperTiling)三种渲染方式。

      CrossFire 系统有四种可能的显示模式:

      瓦片分离
    页框分离模式
    交替帧渲染
    超级消除混叠

      前三种模式以性能为导向,而“超级消除混叠”模式则以质量为导向。每种模式均采用不同方法在多个 GPU 之间分摊渲染 3D 图像所需的工作负荷。在任意特定时刻只能有一种模式处于运行状态。

      启动 3D 应用程序时,ATI Catalyst 显示驱动程序将自动选择三种性能模式中的最佳模式,而无需用户干预。用户还可以通过在 Catalyst Control Center 中选择新的“超级消除混叠”模式来选择提高图像质量。

    瓦片分离

      在此模式下,要渲染的每个帧会以交错棋盘图案分成多个瓦片,这样即可为两个 GPU 各分配半数瓦片。每个瓦片均保持为一个 32x32 像素的相对较小的正方块,因此无论显示器上当前渲染的是何内容,这种方法都可以很好地在各个 GPU 之间平衡工作负荷,同时这样做不需要任何额外的软件开销。

      “瓦片分离”的优点是能够与几乎任何 3D 应用程序一起工作。不过,有少数应用程序采用“瓦片分离”工作负荷分配无法获得最佳性能。对于这些特殊情况,可以使用“页框分离模式”。

    页框分离模式

      在此模式下,每个帧分割成两部分,每一部分由一个 GPU 进行处理。系统会为每个应用程序自动确定理想的配置。

      尽管通常采用“页框分离模式”分摊工作负荷不如使用“瓦片分离”有效,但在少数情况下,前者可能更为有效。为了最大程度地提高兼容性和性能,CrossFire 对该模式提供支持。

    交替帧渲染 (AFR) 模式

      在此模式下,所有偶数帧在一个 GPU 上进行渲染,而所有奇数帧在另外一个 GPU 上进行渲染。在这两个 GPU 上完成渲染的帧将被发送到 CrossFire 版本卡上的“合成引擎”,然后“合成引擎”再将其发送到显示器上。在所有可用模式中,由于 AFR 允许两个 GPU 独立工作,因此其具备最大的性能提高潜力。该模式同时也是唯一一个可将两个 GPU 的处理性能共同发挥到极致的模式。

      此模式的主要局限是无法在当前帧的外观取决于先前帧中所生成数据的应用程序中使用,这是因为 AFR 会在不同 GPU 上同时生成连续的帧。在这些情况下,应改用“瓦片分离”或“页框分离模式”。

    超级消除混叠模式

      消除混叠 (AA) 渲染技术旨在消除所渲染的 3D 图像中常见的锯齿边缘、闪烁及像素化问题。消除混叠不是仅仅通过在像素中心的一个位置采样来确定每个像素在屏幕上的颜色,而是在每个像素内的多个位置采样,然后将结果混合在一起来确定最终颜色。

      采用 SmoothVision HD 技术的最新一代 ATI Radeon GPU 使用了一种称为“多重采样消除混叠”(MSAA) 的方法。这种方法从每个像素内的 2、4 或 6 个可编程位置采样,然后使用 gamma 校正样本混合对多边形边缘进行高质平滑处理。利用 SmoothVision HD 的可编程采样功能,CrossFire 新增的“超级消除混叠”模式提高了 CrossFire 系统上的消除混叠质量。

      该模式的工作方式是让每个 GPU 渲染同一个启用了消除混叠功能的帧,但对每个帧分别使用不同的采样位置。当两个版本的帧都完成后,会在 CrossFire 的“合成引擎”中将其混合在一起。最终得到的图像效果是样本数的两倍,因此 4x 和 6x 的“消除混叠”将分别变成 8x 和 12x 的“超级消除混叠”。

      有些类型的纹理(尤其是那些具有透明部分的纹理)可能会显现通过 MSAA 技术消除不了的混叠。在这些情况下,可以使用另一种形式的消除混叠(称为“超级采样消除混叠”(SSAA)),因为它会影响图像中的每一个像素。尽管该模式的运行速度通常比 MSAA 慢,但藉由多个 GPU 的强大能力,SSAA 变得非常实用。

      SSAA 首先以高于显示器输出的分辨率来渲染场景,然后再通过降低采样率将其变回到显示器的分辨率。这种方法通常有两大缺点:一是它需要比正常情况渲染多得多的像素,从而会对性能造成巨大影响;二是它会导致一个有序的网格采样样式,从而在对某些类型的锯齿边缘进行消除混叠处理时效果很差。CrossFire 的“超级消除混叠”克服了上述两个问题。它利用第二个 GPU 来渲染每个帧所需的附加像素,因此对性能影响很小或根本没有影响。它还能利用一种更为有效的采样样式,这种采样样式可以更好地对接近水平和接近垂直的边缘进行消除混叠处理,从而使图像总体质量得以改善。

      新的“超级消除混叠”模式中有两种模式组合使用 MSAA 和 SSAA 来达到终极图像质量。它们的工作方式是不仅在每个 GPU 上使用不同的多重采样位置,而且还略微偏移了像素中心。实际上,每个 GPU 都会从不同的视点来渲染图像,视点之间大约相隔半个像素的宽度。新的 10x 和 14x 的“超级消除混叠”模式就是以这种方式运行的,它们将 2x SSAA 分别与 4x 和 6x MSAA 合并在一起。

      这两种模式可与 SmoothVision HD 的“各向异性过滤”(AF) 配合工作。

      用户可通过 ATI Catalyst Control Center 界面启用新的“超级消除混叠”模式。

      就对显卡性能的有效利用而言,瓦片分离是三种渲染模式中表现最理想的。唯一的困扰是软件的兼容问题,目前只有极少数游戏和程序支持这种渲染方式。而且OpenGL几乎无法支持这种渲染方式。也正是因为这样,无论是CrossFire还是SLi都同时支持多种渲染技术,以便可以根据实际情况选择合适的模式。

    [技术] CrossFire常见问题及答案

    建立一个有效的 CrossFire™ 系统需要组合哪些产品?
    需要以下组件: 两块支持CrossFire的图形卡。一块CrossFire就绪主板(其中包含两个 PCI Express X16 插槽)。两片CrossFire桥接器。

    哪些主板支持 CrossFire?
    基于Intel和ATI芯片组的任何经过认证的CrossFire主板。


    CrossFire技术是否支持AGP架构?
    不。CrossFire技术是专门针对PCI Express架构而设计的。这种新的总线拥有更高带宽(为AGP 8X的两倍至四倍),支持同步数据传输,并可驱动多台高速图形处理装置。而AGP 8X则仅可驱动一台高速图形处理装置,因此不太适用于CrossFire。

    CrossFire有特定的CMOS主板设置吗?
    在一些主板上,CMOS的默认设置可能仅支持一个PCI Express X16插槽。确保两个PCI Express X16插槽在CMOS 中均已启用。

    CrossFire需要进行软件设置才可工作吗?
    是的,CrossFire 需要在Catalyst Control Center中启用一个设置才可运行。在正确设置和安装了所有硬件和软件之后,Catalyst Control Center中会出 CrossFire工具,要在Catalyst Control Center中访问和启用CrossFire,请执行以下操作:
    在“高级视图”中单击CrossFire。然后,选择Enable CrossFire(启用 CrossFire)。
    成功启用了CrossFire 时,除 CrossFire使用的显示设备之外,将会禁用其它所有的显示设备。在禁用CrossFire之后,启用CrossFire时所禁用的多个监视器/显示器会重新出现。

    要切换到“高级视图”,请执行以下操作:单击“操纵板视图”按钮,然后选择“高级视图”。在树状视图中选择“显示器管理器”。


    如何在CrossFire系统上连接图形卡?
    早期的CrossFire系统需要通过外部电缆连接两块卡,将电缆自从图形卡的DVI-I接头连到主图形卡的CrossFire接头,这条电缆用于将信息自从图形卡传送到主图形卡,然后将合并后的信号发送至显示设备。
    目前版本的CrossFire系统需要通过CrossFire连接桥将两片CrossFire显卡进行连接。Catalyst 7.10驱动开始支持ATI Radeon HD 2600和HD 2400系列显卡软件CrossFire,所谓软件CrossFire只适用于相同的显卡插入CrossFire的兼容主板时,此时双显卡之间无须硬件物理连接。

    哪些游戏/应用程序可以使用CrossFire?
    CrossFire对所有全屏 3D 游戏和应用程序均适用。默认情况下,会在Catalyst Control Center软件中启用 Catalyst A.I.。这样可为应用程序自动选择最佳渲染模式。

    参战显卡介绍:Inno3D GeForce 8800GT

      

    参战显卡介绍:PowerColor HD 3870

    测试平台和说明

    测试说明:

      1、为了尽可能避免CPU成为整个测试平台的瓶颈,我们将Q6600超频至333×9=3.00GHz,得益于两主板的优异表现,无须进行加压超频;
      2、内存运行在标准的DDR2-800(即FSB:DRAM比率为5:6),内存小参统一调至4-4-4-10-1T,其他选项均为各主板“Load Optimized Defaults”状态下的默认值);
      3、显卡驱动用了能正确识别Radeon HD3870显卡的催化剂7.11版本;
      4、游戏测试均采用最高特效进行,而AA和AF均由游戏内建的情况而定,我们不使用驱动面板进行强制性驱动。

    Futuremark 3DMark06 NoAA NoAF

    Futuremark 3DMark06 4XAA 16XAF

    Enermy Territory Quake Wars

    Half-Life2 Episode Two

    Unreal Tournament 3 Demo

    Company of Heroes Opposing Fronts

    Call of Juarez

    Lost Planet Extreme Condition

    Power Cosumption

    8800GT单卡、双卡效能对比


    HD 3870单卡、双卡效能对比


    8800GT SLI/HD 3870 CrossFire效能对比


    小结

     

     

    要想在高分辩率、高画质模式下玩爽上述的游戏,双卡是必不可少的。

      正如我们所提到的那样,游戏和专业图形制作对PC的图形子系统性能提出了前所未有的需求,以上面的4款最新的游戏大作为例,即使是使用高端的GeForce 8800 GT 512MB和Radeon HD 3870 512MB也仅仅是勉强可以在高分辩率、高画质模式下流畅运行,同时游戏玩家和狂热的硬件发烧友对3D性能的追求又是永无止境的,这样的背景之下,NVIDIA的SLI和ATi的CrossFire双卡互联技术无疑是最好的解决方案。

      事实上,的确是如NVIDIA对于SLI的宣传语那样:TWO IS BETTER THAN ONE。不过,这“TWO”和“ONE”之间的关系并非简单的1+1=2,对于NVIDIA的SLI和ATi的CrossFire,他们各自的“TWO”比“ONE”所“BETTER”的程度也有所不同,我们这次的测试也是希望尽力找出这种程度上的差异。

    ATi的CrossFire需要两个桥接器,而NVIDIA的SLI只需1个桥接器。

      从我们的测试结果来看,在超过90%的测试项目中,CrossFire双卡相对单卡在效能上的提升幅度比SLI双卡相对单卡的要高,CrossFire双卡在超过60%的测试项目中比单卡有超过50%的效能提升,而对于SLI双卡来说只有不到40%有这种提升效果,更为惊讶的是,CrossFire双卡在超过30%的测试项目中比单卡有超过80%的效能提升,而对于SLI双卡来说,超过70%效能提升的项目都是寥寥可数。换句话俩说,就是ATi的CrossFire比NVIDIA的SLI在效率上更加高

      从单卡效能上来看,HD 3870绝对不是GeForce 8800GT的对手,并且由于两者处在同一价格区间(¥1999元),因此在单卡市场上的竞争HD 3870还难以对8800GT产生太大的冲击。不过,HD 3870的CrossFire凭借着更高效率在一定程度上弥补了单卡效能上的差距,同时由于目前占据市场主流的Intel中高端芯片组如P965、P35、X38等均提供对CrossFire的支持,而SLI方面则只有NVIDIA自家的芯片组独力支撑,因此在双卡互联的竞争方面,ATi已经有足够的资本向NVIDIA开火。

      HD 3870 CrossFire还是8800GT SLI?的确是一个艰难的选择,您又会如何去选择呢?欢迎在文后的评论中留下您的见解。

    ×
    热门文章
    1微软或选择明年6月推出Windows 12,预计会带动新一轮AI PC销售
    2日本PC厂商再推新款Noctua定制显卡:RTX 4070 Ti Silent Master
    3AOC推出U27N3RB显示器:90W Type-C一线通,带支架臂,首发到手1999元
    4第二代E-Core至强Clearwater Forest最多288核,拥有更高的IPC和缓存
    5最新曝料Apple Vision Pro屏幕供应商为中国厂家,名单内无索尼出现
    6LG 27GR95QE电竞显示器降至5499元:2K@240Hz OLED屏,相比首发价几乎腰斩
    7江波龙宣布将与金士顿成立合资公司:为国内用户提供高端嵌入式存储产品
    8Capcom确认将有更多《生化危机》重制,且继续使用RE引擎制作
    9相关消息称iphone 16系列将全系配备“自定义按钮”,并新增更多功能
    已有 2 条评论,共 2 人参与。
    登录快速注册 后发表评论
    • 游客  2016-03-04 17:46

      该评论年代久远,荒废失修,暂不可见。

      支持(0)  |   反对(0)  |   举报  |   回复

      2#

    • 游客  2015-11-29 02:28

      该评论年代久远,荒废失修,暂不可见。

      支持(0)  |   反对(0)  |   举报  |   回复

      1#

    登录 后发表评论,若无帐号可 快速注册 ,请留意 评论奖罚说明