1回顶部 2006年11月8日,NVIDIA发布了全球首款DX10显卡——GeForce 8800 GTX。这款产品的面世,正式为我们揭开了DX10序章。从2006年11月到2009年的9月,DX10技术统治显卡市场3年后,终于被最新的DirectX 11所取代,不过此次首款面世的产品不再是绿色的NVIDIA,而是红色的ATI。 纵观显卡发展史,NVIDIA与ATI在新产品发布上交替领先是很平常的事,因此全球首款DX11显卡由Radeon HD5870实现也并不令人太意外。NVIDIA这次的动作较为迟缓,不过今天我们终于迎来了NVIDIA的首款DX11产品正式发布: NVIDIA缘何迟到?究竟这背后存在怎样的秘密?Fermi是什么?GF100又是什么?同时,NVIDIA的首款DX11显卡——GeForce GTX 480会有怎样的表现?GTX480在核心架构方面与上一代产品、竞争对手产品有怎样的不同?GTX480产品优势在哪里…… 关于GeForce GTX 480,我们实在有太多太多的问题想获得解答。现在,GeForce GTX 480终于到来!借此机会,本文将对NVIDIA的两款DX11产品——GeForce GTX 480/GeForce GTX 470的各方面进行全方位测试,诸多的疑问也尽在本文揭晓! 各位看官,接下来就让我们进入GTX480的世界吧! Fermi、GF100、GTX400区别 关于NVIDIA的首款DX11产品,实际上早在半年前,甚至更早的时间就已经有所传闻了。这颗拥有30亿晶体管数量的芯片从最早的Fermi到后来的GF100,再到今天发布的GeForce GTX 480/470,传闻当中的名称一变再变。那么这几个名称究竟有什么区别?在我们进入今天的测试之前,我们首先为大家揭开第一个谜题…… ◆ Fermi 关于NVIDIA首款DX11产品的名称,最早出现在人们耳旁的就是“Fermi”这个词了。实际上,NVIDIA早在上一代产品当中就开始使用科学家的名字来为产品架构命名,例如G80时代,NVIDIA就曾经为其使用了著名的物理学家“Tesla”来命名。 而NVIDIA的第一款DX11产品架构,则是使用了另外一位物理学家Enrico Fermi(恩理科·费米)的姓“Fermi”来为其命名。也就是说,我们通常所说的Fermi是泛指NVIDIA为这一代显卡(包含家用以及专业领域的所有产品)核心架构的命名,而并非特指某一款产品(例如,Fermi并不是代表了GTX480)。 这也就不难理解,NVIDIA为何要将上一代GTX280系列产品的架构称之为GT200(GeForce of Tesla,采用Tesla的第二代高端产品)了。 ◆ GF100 接下来的GF100则可能更容易让你迷惑了。相信不少朋友在看到GF100这样的缩写之后,脑海当中的第一印象就是GF100=GeForce 100。如果真这样想,那么你就大错特错了。我们先来说GF100当中的“GF”,GF是三个单词的缩写,原文为GeForce of Fermi。也就是说,“GF”实际上想要表达的意思是——采用了Fermi架构的GeForce产品。而后面的“100”则是表示了采用了Fermi架构的第一代高端GeForce产品。 也就是说,随后我们还有可能在市场当中看到出现GF120、GF150或者GF200、GF300等产品。当然,是否真的能延续多代产品,这也要看Fermi产品的架构能否适应未来游戏的发展方向了。 另外,本文中稍后在产品架构当中多次使用的“GF100”将会代表采用了Fermi架构的GF100产品,而并非直接等同于GTX480(两者在概念上有一定差别)。 ◆ GTX400 在大家明确了Fermi以及GF100的意思之后,那么GTX400也就不难理解了。 GTX400依然是NVIDIA的GeForce系列产品命名方案,这种命名方式从GeForce GTX 280首次出现。其中“GTX”表示了高端系列产品,而“400”当中的“4”则是表示了NVIDIA的第几代产品。首次发布的产品将会包括GeForce GTX 480以及GTX 470两款产品。 未来我们可能还会看到GTX460(高端产品当中的最低规格产品)、GTS450(中端产品)、GT440(主流及产品)、GT420(入门级产品)等。 通过简单的介绍,相信各位读者已经能够对Fermi、GF100以及GTX400三种不同的叫法有所了解了。简而言之,NVIDIA面向家用领域的产品正式命名依然以传统的方式,也就是GeForce GTX 480以及GTX 470,而Fermi以及GF100实际上不过是NVIDIA的内部产品代号,对消费者而言没有太大意义。 作为统一架构的领军人物,NVIDIA的8800GTX显卡发布之后,几乎鲜遇敌手,长期占据着性能王者的宝座。大约时隔半年之后,ATI拿出Radeon HD 2900XT,不过仍然未能击败对手,而是把定位转向了次顶级的8800GTS。以至于NVIDIA后期推出的GeForce 8800 Ultra,实际上并无竞争对手可比。 也是从这一代产品开始,直到2009年的9月底,NVIDIA的各款产品,诸如GeForce 9800 GTX、GeForce GTX 280等,一直牢牢占据着单核心显卡市场王者的宝座(事实上,双核心也一直占据,只不过本文不涉及双核心产品,因此不再提及)。 再看ATI方面,从Radeon HD 2900XT一战失利后,看似在高端市场中一蹶不振,实际上暗自转变了市场竞争的策略。新的市场策略当中,ATI不再用高端显卡与NVIDIA产品直面竞争,反而开始走最佳性价比的产品路线,这多多少少让人感觉ATI似乎受到了AMD某些方面的影响。直到2009年的9月,ATI抢先发布了首款DX11显卡——Radeon HD 5870,重新拿到了性能王者的宝座。 而今天,NVIDIA将会重新对性能王者的宝座进行冲击,首当其冲的就是今天我们要为大家介绍的产品——GeForce GTX 480。如今的市场状况,好似当年ATI推出Radeon HD 2900XT,同样是晚了半年的时间,同样是王者之间的对决,不过两家所处的位置却与历史中截然相反。 NVIDIA能否借首款DX11产品GTX480发布的机会雪耻前仇,重登王座?我们接着为您讲述。 2回顶部 GTX400两款产品亮相 不可否认,无论是ATI还是NVIDIA,在每款新产品发布后,没有人希望看到自己的产品被竞争对手击败,尤其在高端顶级产品上最为明显。作为自己的形象产品,此次NVIDIA携DX11以及一箩筐的新特色高调登场。 NVIDIA首次发布的DX11显卡包括两款产品:GeForce GTX 480以及GeForce GTX 470。 NVIDIA缘何会比竞争对手晚了半年之久才发布首款DX11显卡?这不仅是读者心中的疑问,同时也是我们编辑部当中的一个疑问。对此,NVIDIA的相关人员做出了以下解释: NVIDIA的GTX400系列产品在设计以及研发方面进行了重大改革,尤其是在Tessellation方面,NVIDIA曾经一度与ATI走了相近的路线。不过NVIDIA发现,这样的做法不仅不会带来很好的性能,同时也是对消费者的不负责任。因此,NVIDIA又重新对GTX400的核心架构进行设计,在Tessellation等方面进行了大刀阔斧的改进。因此GTX400系列显卡,将在DX11性能方面大幅领先竞争对手的HD5000。 这是出自NVIDIA的一家之言,事实究竟如何,相信NVIDIA也不可能瞒得过今天。接下来,我们将为大家解开GTX400的核心架构,看看NVIDIA究竟做了怎样的改进,让GTX400能够“大幅领先竞争对手”。 当然,在这之前,我们还是先简单扼要的回顾一下DX11技术的几项重要改进。 DirectX11技术回顾(1) 关于微软的DirectX 11技术,我们早在Radeon HD 5870显卡评测当中就已经为大家进行过介绍了。为了不再占用过多篇幅,我们将DX11技术的几大重点进行简单扼要的回顾。 ◆ Shader Mode5.0 每次DirectX的升级都会伴随着Shader Mode的升级,而几乎每次Shader Mode升级都会带来画质方面的改进。不过此次Shader Mode5.0并没有为我们带来太多画质方面的变化,而是为游戏开发人员提供了更多的便利。 不过,Shader Mode 5.0中增加的Hull Shader、Compute Shader、Domain Shader三种新的Shader,则会对后面的一些技术特性带来画质上的变化,这一点我们将会在GTX400产品架构当中了解到。 ◆ Tessellation技术 Tessellation在DX11当中会为我们带来非常明显的画质提升,并且这也是一项很有意思的技术。举个简单的例子:我们在游戏中经常会遇到某一场景中原本应该平滑的球面或者圆弧面,由于多边形的数量不足致使这个弧面看起来棱角分明,而Tessellation则是让这个棱角分明的弧面重新顺滑的一项技术。 Tessellation技术应用到了Shader Mode 5.0中增加的Hull Shader和Domain Shader。不过关于Tessellation工作流程我们将会在稍后的架构介绍当中进行详细介绍。Tessellation能够实现的功能远不止上图当中的例子,下图当中的画面能够更好的为我们说明: 简单来说,Tessellation技术能够抛开CPU,独立生成顶点单元,让游戏画面细节更加丰富,因此在实际游戏当中我们会看到支持Tessellation技术的画面要比不支持Tessellation技术的画面更加细致、真实。Tessellation目前已经在多款DX11游戏当中得到了应用,效果最为出色的就是刚刚发布的DX11大作《地铁2033》。如果没有Tessellation技术要想用上一代显卡实现相同的画面效果,需要耗费的资源将成几何基数上涨。 ◆ DirectCompute 在DX11当中加入的另一个重要技术就是DirectCompute,DirectCompute类似于NVIDIA的CUDA,它能够更好的帮助GPU实现通用计算功能,并且能够在视频转换、物理计算、图像处理、人工智能、光线追踪等等。不过对于一个刚刚推出的技术,DirectCompute目前尚未得到太多的软件支持,但是我们仍然相信,凭借微软的号召力,DirectCompute的广泛普及指日可待。 另外,无论是DirectCompute或者是CUDA,NVIDIA对这类技术都非常看重,并且首次在GTX400产品上做到了光线追踪的实时渲染。 3回顶部 DirectX11技术回顾(2) ◆ OIT乱序透明 OIT(透明独立叠加)乱序透明是一种对半透明物体的全新渲染方式,它不仅能够以更好的画面效果展示半透明物体(例如玻璃、水、火、烟雾等),同时还能够加快半透明物体的渲染速度。 实际上,这一技术只是在DirectCompute 11中的一部分,不过目前得到实际应用的游戏还并不很多。 ◆ 渲染后处理 进行后处理渲染的ROP单元在ATI的DX11架构当中也被改进了一部分,这其中就包括了最新的景深、运动模糊、环境光遮蔽、色调映射、边缘检测、平滑、锐化后处理多种特效的加入。新的算法同样进行了优化,不仅使得开发人员在编程时更加简便,同样还增加了运行效率,并且画面效果也得到了提升。 后处理效果同样是在DX11特效中的一个不小改进,其主旨在于让GPU获得更快的处理速度,并且还能够获得更好的显示效果。 ◆ DirectX11纹理压缩 纹理压缩技术同样是一种不容易被玩家察觉的技术,微软表示在DX11当中,纹理压缩技术再次升级,尤其是在HDR纹理压缩方面首次提供了支持。虽然这一技术我们并不会看到,但是纹理压缩能够更好的节省显存,从侧面加快运行速度。 实际上,DX11还对一些其他特性进行了改动或者添加,不过这些改动或微不足道、或对游戏画质提升不大、或与GPU无关,因此本文就不再为大家复述了。接下来我们就结合NVIDIA的首款DX11产品,来为大家介绍一下NVIDIA在DX11方面的应用。 了解了微软在DX11方面做出的改进之后,接下来我们再来看看NVIDIA相对DX11方面做出的重要改进有哪些方面。 NVIDIA在DX11方面的改变非常巨大,尤其是在Tessellation(曲面细分)方面的改进,明显要比ATI的Radeon HD 5000系列产品更加明显。下面就是NVIDIA在GPU上为Tessellation做出重大改进的两个部分 为了加入Tessellation的支持,并且能够更好的保证执行效率,NVIDIA在每个SM阵列当中均加入了一组PolyMorph引擎(多形体引擎)以及Raster引擎(光栅引擎)。相比ATI的HD5000架构来说,拥有非常大的优势。 从NVIDIA官方公布的性能对比上来看,同样都具备Tessellation功能的HD5870和GTX480显卡在开启低曲面细分设置情况下,两者性能差距并不明显,而将曲面细分级别调制较高设定后,GTX480将会拥有非常明显的性能优势。究竟NVIDIA如何做到?接下来我们就来通过架构解析,为大家详细阐述。 之所以GTX400系列产品受关注度如此之高,并非简单的性能表现。GTX400在核心架构方面的巨大转变,同样是不少玩家们最为关注的焦点。上一页中,我们为大家简单归纳了一下GTX400系列产品在架构方面的改进。接下来我们就用一个较长的小节,为大家做GTX400的核心架构设计的全面介绍。 GTX400系列产品采用了GF100核心架构,而GF100核心架构又是从Fermi架构演变而来。但是Fermi不能直接与GF100划等号,因为Fermi架构代表了这一代产品的总体架构设计方式,而GF100则主要泛指Fermi架构针对GeForce产品设计演变而来的核心架构。后文中,我们将以GF100核心架构来为大家进行讲解,再次提醒GF100架构又不能完全等同于GTX480(这一点我们将在后文的规格介绍当中说明)。 ◆ GF100架构总览 从NVIDIA的首款统一架构的G80开始,到今天的GF100产品,这已经是NVIDIA第三代统一架构产品。除了在架构方面的改进外,此次GF100的核心数量也再次得到了翻倍。 如果说Radeon HD 5870的核心架构酷似一个双核心处理器的话,那么此次NVIDIA发布的GF100核心就有点类似于四核心处理器的逻辑架构图了。从下图当中来看,GF100核心主要划分为Host Interface(主接口,负责PCI-E通讯传输,包括读取CPU指令等)、GigaThread Engine(主线程调度引擎)、4组Graphics Processing Clusters(后文简称GPC,图形处理集群,GPU的核心部分)、6组Memory Controller(显存控制器,每组显存控制器位宽为64bit,总位宽384bit)、L2 Cache(二级缓存,容量为768KB)、6组ROP单元(每组包含8个ROP,共48个)。 在GF100核心当中,共包括4组GPC部分,每组GPC又包括四个Streaming Multiprocessors(流式多处理器阵列,简称SM阵列),而每个SM阵列当中又包含了32个Core(NVIDIA称之为CUDA Core,CUDA核心,为了便于读者理解,后文当中我们依然延续NVIDIA原有的名称:流处理器)。在每个GPC当中,NVIDIA都增加了一组全新的Rester Engine(光栅引擎)。而在每组SM当中,NVIDIA还增加了同样全新设计的PolyMorph Engine(多形体引擎,执行曲面细分的主要单元)。Rester引擎以及PolyMorph引擎实际上是NVIDIA对GF100核心架构做出的最大变化。 在GPU通过主接口获取了CPU的指令之后,GigaThread引擎将会从系统当中调取GPU所需计算的数据,并且拷贝到存储器当中。随后,GigaThread引擎将这些数据为不同的SM创建和分派线程块。每组SM会将GigaThread引擎分配来的线程块分配至Warp(32个线程的群组,后文当中为大家详细介绍),再由Warp调度器重新分配为线程,并由分派单元派发至每个CUDA核心或者其他执行单元上。 当然,GPU当中的执行并不会总是如此顺利。如果此时某一个SM阵列当中的工作出现无法完成的情况,例如在完成了Tessellation(曲面细分)以及光栅化之后即将进入其他流程,但是单个SM阵列无法完成全部工作,那么GigaThread引擎能够将这些已完成的数据重新分配到其他的SM阵列当中,从而提高执行效率,避免了因为某一个SM阵列数据量过大,导致所有SM阵列空循环。 ◆ 对比GT200核心架构 前面我们对GF100核心架构有了一个大概的认识,想要了解GF100在核心架构方面究竟发生了哪些变化,我们还是要再来看看当年NVIDIA的GT200显示核心架构: 从GT200的核心架构图来看,GF100的设计思路虽然还在遵循一些GT200的痕迹,不过显然GF100在不少方面已经发生了翻天覆地的变化。这其中包括NVIDIA在每组GPC以及SM阵列当中引入的Rester引擎(原有的光栅引擎重新设计并且位置也发生了变化)以及PolyMorph引擎。除了两个全新引擎,每个SM阵列的规格、设计也发生了较大的改变。 当然,在GT200核心架构当中,并没有引入GPC这一概念。NVIDIA实际上更想通过这样的架构设计,让未来产品(例如中端、入门级等)的等级划分更加容易。关于这一点,我们会在后文中的NVIDIA未来产品线预测中,为大家更详细的介绍。 GF100新单元,GPC架构 想要一两句说明NVIDIA的GF100架构显然不切实际,在我们对GF100核心架构总体有一定的了解之后,接下来我们将GF100核心拆分开来,一一为大家介绍GF100架构图当中的每个细节。 ◆ GPC架构解析 前面我们介绍了,GF100核心当中总共由四组GPC(Graphics Processing Clusters,图形处理集群)组成。那么,接下来我们就来仔细了解一下这个全新的GPC单元当中的内部架构是如何设计的。 在每个GPC当中,都会包括一个Raster Engine(光栅引擎,顶部黄色横条)以及最多四组SM(Streaming Multiprocessors,后文统一采用SM阵列简称,不再复述)阵列。注意,我们这里说到的是每个GPC内最多有四组SM阵列,NVIDIA会根据情况对GPC内的SM单元进行削减。例如在GTX480核心当中,就削减掉了一个GPC当中的一组SM阵列,也就是说其中三组GPC均有四个SM阵列,而另外一组GPC当中仅有三组SM阵列。 GPC是GF100当中的一个重要模块,也是NVIDIA在统一架构产品当中首次引入的概念。在每个GPC当中,都增加了一个Raster Engine(光栅引擎)。除此以外,每个GPC几乎都可以被看成是一个完整的GPU小核心,因为每个GPC当中均包括了能够对定点、几何、光栅、纹理以及像素处理的功能。可以说,除了ROP功能外,GPC几乎已经能够完成绝大部分的图形处理工作。如果NVIDIA对整体GPC进行削减,那么也将会是一件非常容易的事情。我们猜测这对产品线架构的划分,会非常有利。 ◆ GPC设计的优势 几乎等同于单个GPU的GPC部分,在每个GF100核心当中均拥有四组。如此一来,NVIDIA想要在中端、主流级以及入门级显卡当中重新调整核心架构就显得相当容易了。因为NVIDIA仅需要对GPC数量进行调整,几乎就可以完成对不同等级显卡的划分。而在具体到每个系列产品的结构划分当中,NVIDIA又可以根据产品的良品率适时的削减SM阵列。这样一来,NVIDIA不仅能够将产品线划分得更细,同时对于晶圆的良品率也起到了间接的提升作用,可谓一举两得。 或许有读者会说,NVIDIA原有的SM阵列屏蔽方式不也一样能够起到等级划分的作用么?没错,如果NVIDIA的设计思路依然停留在GT200的时代,那么原有的等级划分方式确实有效,不过在引入了全新的Raster引擎以及Polymorph引擎之后,单纯屏蔽SM阵列的方法显然就不再那么合适了。 变化巨大 SM架构解析 既然NVIDIA宣称在GF100上采用了第三代流式多处理器(Streaming Multiprocessors,简称SM阵列)设计,那么我们接下来就再来看看,NVIDIA在SM阵列设计上发生了什么样的变化。 NVIDIA表示,在第三代SM阵列架构方面引入了多项改进,能够让SM阵列性能更加强大,并且在可编程方面以及效率方面也将会获得很高的提升。 ◆ 流式多处理器(SM)解析 NVIDIA每次进行架构方面的调整,都会对SM阵列当中的流处理器(在GF100中,NVIDIA称之为CUDA Core,CUDA核心)数量进行调整。在G80当中,每组SM阵列包含有16个流处理器;而到了GT200核心之后,SM阵列当中增加到了24个;最新的GF100当中则提升到了32个。另外,除了最新的GF100,原有的G80以及GT200核心当中,均为8个流处理器为一组,G80的一个SM当中包含两组,GT200的SM当中为三组。在GF100核心当中,不再刻意为流处理器核心进行分组: 从图中可以看到,每个SM阵列均包含了一个Instruction Cache(顶部蓝色方框,指令高速缓存,负责接收存储线程块)、两个Warp Scheduter(第二行两个橙色方框,Warp调度器,负责为后面的Core将线程块分解为线程)、两个Dispatch Unit(第三行两个橙色方框,分派单元,负责分派由Warp调度器分配后的指令)、Register File(第四行蓝色方框,寄存器文件,存储分派单元的warp)、32个CUDA Core(绿色正方形方框,CUDA核心,负责运算指令)、16个Load/Store Unit(核心右侧标有“LD/ST”的绿色方框,载入/存储单元,负责运算线程地址)、4个Special Function Unit(最右侧标有“SFU”的绿色方框,特殊功能单元,负责执行其他抽象指令)、64KB Shared Memory/L1 Cache(倒数第5行蓝色方框,64KB高速缓存,可灵活划分为共享存储器和L1缓存使用)、Uniform Cache(倒数第四行蓝色方框,统一高速缓存)、4个Texture Unit(倒数第三行深蓝色方框,纹理单元,进行纹理填充)、Texture Cache(倒数第二行蓝色方框,纹理高速缓存)以及PolyMorph Engine(最下一行黄色方框,多形体引擎,曲面细分的主要部分)。 在简单的了解了SM阵列当中的构造之后,下面我们继续将SM拆分开来,仔细的为大家介绍一下SM当中这些名称复杂的单元究竟如何运作的。 4回顶部 ◆ CUDA核心架构解析 在最新的GF100当中,每个流处理器(NVIDIA称之为CUDA Core,等同于之前的流处理器,为了方便读者理解,我们仍然沿用流处理器的名称)仍然采用标量架构(也就是1D架构),能够对各种向量尺寸数据实现全速运行(例如Z缓冲区数据的1D向量可以由单个Core完成,而对于纹理存取的2D向量则可以通过两个Core合作完成),而不会出现部分流处理器在某一时钟周期内无法工作的情况。这一点实际上NVIDIA从最早的G80当中就已经开始采用,这也是NVIDIA在核心架构设计上与ATI出入最大的地方。 在每个流处理器当中,包含有Dispatch Port(分派端口)、Operand Collector(运算对象收集器)、FP Unit(浮点运算单元)、INT Unit(证书算术逻辑单元)以及Result Queue(结果队列)几大部分。 每个流处理器当中,均能够支持最新的IEEE754-2008浮点标准,也就是说,它能够支持单精度以及双精度的乘法(MAD)、加法(FMA)指令。那么IEEE754-2008的优势究竟在哪里?在之前的算法当中,每条MAD或FMA计算指令完成后都会对结果进行四舍五入,然后再继续进行计算,对计算结果再次四舍五入,导致最终结果很有可能会造成较大的数据偏差。而最新的IEEE754-2008浮点标准则规定,只有在每条FMA指令全部计算完成后,才会进行一次四舍五入,因此计算结果的精度将会大幅提升。 另外,在GF100中,全新设计的整数ALU支持所有指令全32位精度,符合标准编程语言的要求。整数ALU还经过了优化,可有效支持64位以及更高精度的运算。它支持各种指令,其中包括Boolean、移位、移动、比较、转换、位字段提取、位反向插入(Bit-reverse Insert)以及种群统计。 DX11当中的重大改进莫过于Tessellation(曲面细分)技术了,而转换到GF100核心上之后,就是PolyMorph Engine(多形体引擎)。NVIDIA的PolyMorph引擎的作用有些类似于ATI HD5870显卡当中的Graphics Engine(图形引擎),两者之间的区别在于HD5870显卡上仅有一组Graphics Engine(图形引擎)来进行曲面细分,而GF100当中,每个SM阵列当中均有一组PolyMorph引擎,且每四个PolyMorph引擎还拥有一组Raster Engine(光栅引擎)。 在我们介绍PolyMorph引擎之前,我们有必要先来了解一下GPU在几何运算方面近年来的进展以及PolyMorph引擎与Raster引擎之间的关系。 ◆ DX11大幅提升几何性能 在DX11之前,GPU几乎很少有对几何处理能力大幅提升的产品,即使从NVIDIA的GeForce FX 5系列产品说起,到GeForce GTX280,GPU的几何性能增长不过3倍。而从GTX280到GTX480,NVIDIA表示将会获得8倍的性能提升。这其中,DX11最新提出的Tessellation技术就是让几何性能成倍增长的关键所在。 Tessellation技术能够允许GPU自行生成三角形(在一定的条件下),并且部分情况下能够让三角形的密度比普通情况高出数十倍,以达到精细画面的情况。与此同时,光栅化单元的工作压力也就会随之而来,为此NVIDIA特意重新着手GPU整体的设计思路。NVIDIA为了提升Tessellation的效能,避免Tessellation成为整个图形运算的平静,为每组SM阵列当中均加入了一个PolyMorph引擎,同时为了保证光栅单元的效能,在每个GPC中均设有一个光栅引擎(也就是四组PolyMorph引擎共用)。 ◆ PolyMorph引擎 PolyMorph Engine(多形体引擎)当中包括了五个主要部分,分别为:Vertex Fetch(顶点获取)、Tessellator、Viewport Transform(视口转换)、Attribute Setup(属性设定)以及Stream Output(流输出)。 PolyMorph引擎执行步骤: 从一个全局顶点缓冲区中获取顶点,随后发送至SM,以进行顶点着色以及外壳着色。将每个顶点从物体空间转变成了世界空间(本页第一幅图片最左边的形态),而且还算出了Tessellation所需的参数(例如Tessellation系数,简单理解就是:将一个三角形重新划分为多少个三角形)。Tessellation系数(或LOD)被发送至Tessellator。 PolyMorph引擎重新在SM当中读取Tessellation系数。Tessellator将修补面(控制点网格所定义的光滑表面)分成三角形并输出许多顶点。修补(u、v)值定义了网格以及形成网格的连接方式。全新的顶点再次发送至SM,域着色器(Domain Shader,简称DS)与几何着色器(Geometry Shader,简称GS)均在这里执行。DS能够根据外壳着色器(Hull Shader,简称HS)与Tessellator的输入来运算每个顶点的最终位置(本页第一幅图片中间的形态)。在本阶段中,通常会附上一个Displacement Mapping(贴图置换)以提升修补面的细节表现。几何着色器能够执行任何后期处理、按需增加或删除顶点以及基元。 PolyMorph引擎会执行视口转换以及视角校正。 接下来就是属性设置,把后期观察口顶点属性转变成了平面方程,以进行高效的着色器评估。 将顶点“流出”至存储器,使其能够用于更多处理。 PolyMorph引擎的执行大致分为这五个阶段,并且每一个步骤完成之后,都会交由SM进行处理,处理完毕,结果将自动进PolyMorph引擎的入下一个流程处理,当五个步骤全部执行完毕,就会交给下面我们为大家介绍的Raster引擎。 重新改良后的光栅引擎 PolyMorph引擎的工作至此已经基本告一段落,在PolyMorph引擎处理完成的数据此时就会传送至Raster Engine(光栅引擎)。实际上,NVIDIA对光栅引擎也进行了一定的改动,接下来我们就来详细介绍一下。 由于PolyMorph引擎的加入,因此经常会出现三角形数量大幅度提升的情况(尤其是当模型被拉近后),NVIDIA为了避免此时的光栅处理成为系统瓶颈,因此在每个GPC当中均设计了一组Raster引擎,在整个GPU当中就存在了四组Raster引擎,并且四组Raster引擎可以并行工作,效能自然要比上一代产品更好。 与PolyMorph引擎一样,Raster引擎同样为线性流程,分别为Edge Setup(边缘设置)、Rasterizer(光栅化器)、Z-Cull(Z坐标压缩)。 下面是Raster引擎执行步骤: Edge Setup当中会对PolyMorph引擎处理的数据进行顶点位置以及三角形边缘的计算,将没有朝向屏幕(例如被前方的多边形遮挡住)的三角形丢掉。每个Edge Setup能够在一个时钟周期内处理一个点、线或三角形。 Rasterizer负责将Edge Setup处理完成的基元转换成像素,并且对于开启抗锯齿的处理将会为每一个多采样以及覆盖采样执行覆盖操作。每个Rasterizer能够在单个时钟周期内输出8个像素,因此整个GF100就可以在一个时钟周期输出32个光栅化的像素。 在Rasterizer输出像素后,并没有直接进入像素的着色工作。而是继续执行下一步的Z-Cull,Z-Cull提取Pixel Tile(像素图块),并且将图块中像素的深度与显存中的现有像素(之前已经被计算完成的像素存储在显存当中)进行比较,随后将完全处于显存像素后面的像素图块(也就是说屏幕上不可见的像素)从流水线中剔除,避免进一步的像素着色工作。 双Warp调度器提升效率 ◆ 双Warp调度器 在每个SM阵列当中,均设计了两个Warp Scheduler(Warp调度器,32个为一组的并行线程叫做Warp),以及两个Dispatch Unit(指令分派单元)。Warp调度器与指令分派单元协同工作,共分为两组。也就是每个SM阵列当中,双Warp调度器都可以同时发出并执行两个Warp。 每个SM阵列当中的双Warp调度器会自动选取两个Warp,每个Warp调度器以及指令分派单元可以发出一条指令到SM阵列当中的16个流处理器或16个载入/存储单元或4个特殊功能单元,当Warp调度器发现需要调用到32个流处理器时,双Warp调度器以及指令分派单元则得到了最大发挥,最重要的是,此时的流处理器将全部处于运算当中,GF100的整体近乎达到了峰值的运算效能。 这种同时发出和执行两组指令的模式被称之为Dual-issue(双指令执行)模式,这种模式能够支持绝大多数指令,例如整数指令;浮点指令;整数、浮点、载入、存储的混合指令以及SFU指令。不过双精度指令不支持与其它类型的指令进行同时发出和执行。 纹理单元改进后的优势 ◆ 纹理单元 另一个重要单元——纹理单元,在每个SM阵列当中均被安置了四个。每个纹理单元在一个时钟周期内能够计算一个纹理地址并获取四个纹理采样。返回的结果可以是经过过滤的也可以是未过滤的。支持的模式包括双线性、三线性以及各向异性过滤模式。 在GT200当中,每三个SM阵列才能够共享到一个纹理引擎,且此纹理引擎仅有8个纹理单元。而在GF100当中,每个SM阵列当中均由一个属于自己的纹理引擎,包含四个纹理单元,并且还配有专用的纹理高速缓存。另外,纹理单元的运行速度也不再与核心频率同步,而是设计在更高的频率上(是否与Shader频率相同NVIDIA并没有表明,但是概率很高)这样的设计将会对阴影贴图以及环境光遮蔽等效果起到很大帮助。 另外,在GF100当中加入的大容量L1及L2缓存也可以被纹理单元所调用,并且针对纹理单元进行优化,实现了三倍于GT200的容量。 真对DX11方面的改进当中,GF100的纹理单元还加入了BC6H与BC7H纹理压缩格式的支持,这两种纹理压缩格式将会大幅减少在HDR效果下纹理与渲染器目标的缓存占用空间。 另外,纹理单元通过DirectX 11的四偏置点(Four-offset)Gather4特性,还支持抖动采样。这样一来,单一纹理指令就能够从一个128×128的像素网格中获取四个纹理像素。GF100在硬件上采用了DirectX 11四偏置点Gather4,大大加快了阴影贴图、环境光遮挡以及后期处理算法的速度。 64KB可配置共享存储器 在第一代CUDA架构当中,为了提升应用程序的执行效率,NVIDIA首次加入了共享存储器这一概念,并且也确实取得了不错的效果。共享存储器设计在每个SM阵列当中,与各个流处理器直接相连,大大的提升了数据的摄取准确度。 NVIDIA在发现到共享存储器的重要性后,在此次的GF100产品当中,为每组SM专门配备了64KB的共享存储器与L1缓存来共用。 在每组SM阵列当中,均设计了容量为64KB的片上存储器,64KB的总容量实际上由16KB和48KB组合而成。分为两种模式:16KB的L1缓存和48KB的共享缓存;或者是16KB的共享缓存和48KB的L1缓存。 通过两种不同形式的组合,L1缓存能够更好的与高速共享缓存起到互补作用。两者的区别主要在于:共享缓存能够为明确界定存储器存取的算法提升存储器存取速度;而L1缓存则能够为剩下那些不规则的算法提升存储器存取速度,并且在这些不规则算法中,事先并不知道数据地址。 在进行图形处理时,每个SM阵列当中可以使用到16KB的L1缓存,L1缓存作为寄存器溢出的缓冲区起到了更好的提升效能的作用。而到了并行计算当中,L1缓存和共享存储器可以协同工作,允许一个线程块中的线程互相协作,以减少片外的数据通信,大幅提升CUDA程序的执行效率。通过不同的需求,对64KB存储器进行合理分配,以达到更好的效能。 全局共享二级高速缓存 除了一级缓存外,在四个GPC当中,NVIDIA还为GF100设计了一个容量达到768KB的L2 Cache(二级缓存)。L2缓存主要为那些需要载入、存储以及纹理请求的设备提供服务,并且L2当中的数据可以为整个GPU提供数据共享,大大提升了各个GPC、SM之间的数据通讯能力。 在GF100当中的L2缓存被设计为可读、写操作,相对于GT200架构当中的只读L2缓存,具有更高的灵活性。NVIDIA表示,他们采用了一种优先算法来清除L2缓存中的数据,这种算法包含了各种检查,可帮助确保所需的数据能够驻留在高速缓存当中。 举例来说,对于运算物理效果、光线追踪、系数数据结构等一些不确定数据地址的情况,L2缓存能够提供更加快速的效率。而对于一些需要多个SM阵列读取相同数据的情况(如后期处理过滤器等),L2缓存同样是一种更好的解决方案。 另外,L2缓存还能够起到平衡各个SM阵列当中高速缓存平衡的作用。例如,在某组SM阵列当中,高速缓存被执行程序超额预订后,程序无法跨越SM阵列进行存储,而另外一组SM阵列当中的高速缓存虽然并未完全占用,但是还会出现闲置情况。此时,L2缓存就能够让超额预定的高速缓存溢出部分转存到另外一组有剩余空间的高速缓存当中,以起到更加充分利用高速缓存的作用。 在GF100当中,L2缓存取代了之前NVIDIA GPU当中的L2纹理缓存、ROP缓存以及片上FIFO。 另外,L2缓存当中设计的保存储器按照程序的顺序执行存取指令,也为NVIDIA CUDA支持C/C++语言提供了坚实基础。当读、写路径分离(例如一个只读纹理路径以及一个只写ROP路径)时,可能会出现先写后读的危险。一个统一的读/写路径能够确保程序的正确运行。 支持32xCSAA的ROP单元 在GT200当中,虽然开启4x抗锯齿后仍然能够获得不错的性能表现,不过在8x抗锯齿下,由于ROP单元设计因素,在一些最新游戏当中会出现较为明显的性能下降。因此,NVIDIA在GF100当中重新对ROP单元进行了优化,不仅8x抗锯齿获得较大的性能提升,同时还加入了最新的32x覆盖采样抗锯齿模式。 ◆ 抗锯齿效能提升 GF100为了提升8x抗锯齿下的性能表现,重新设计了ROP子系统,大幅提升数据吞吐量以及执行效率。在GF100架构当中,包含了6组ROP单元,每组包含8个ROP单元,并且每组ROP单元均由一个64bit的显存控制器来进行控制。实际上,每组ROP单元都与一个64bit显存控制器、一组L2缓存关联起来,如果增加或删减一组ROP单元,那么其他被关联的两个部件也将会相应的增加或删减。 在GF100当中,每组ROP当中的ROP单元数量也比上一代架构翻了一番,并且每个ROP单元在一个时钟周期内均能够输出一个32位整数像素,一个FP16像素需要两个以上的时钟周期,一个FP32像素需要四个以上的时钟周期。原子指令性能也得到了大幅提升,相同地址的原子操作执行速度最高可达GT200的20倍,邻近存储区的操作执行速度最高可达7.5倍。 那么,能够让8x多重采样抗锯齿(MSAA)的性能大幅提升原因在哪里?其实从前面的介绍当中各位已经能够了解到,NVIDIA在ROP子系统上做出了重大的改进,因此在压缩效率方面有了很大的提升,让更多的ROP单元能够更有效的渲染那些未经过压缩的小基元。 举例来说,在《鹰击长空》游戏当中,NVIDIA上一代顶级产品GeForce GTX 285在分别开启4x抗锯齿以及8x抗锯齿对比下,性能下降幅度大约在50%以上,而在最新的GF100产品上,同样开启4x反锯齿和8x反锯齿进行对比,两者性能差距仅为9%。 ◆ 全新32x覆盖采样抗锯齿 ROP单元的改进不仅为我们带来了更好的8x抗锯齿性能,同时还为我们带来了全新的32x覆盖采样抗锯齿(CSAA)模式,全新的32x CSAA能够为我们带来更加顶级的画面效果。全新的32x覆盖采样抗锯齿(CSAA)不仅仅是因为显卡性能提升而增加,同时也要受益于最新的DirectX 11 API。在DX11当中,新增了“透明覆盖(Alpha-to-Coverage)”功能,让抗锯齿在一些非常细致的表现当中更加真实。下面两张草叶的截图就是很好的证明: 覆盖采样的数量决定了边缘的画质。如果只有四个覆盖或八个采样,那么将会出现非常糟糕的锯齿以及镶边现象,尤其是在纹理靠近屏幕的时候(例如上图左半部分的画面表现)。采用32x CSAA后,GPU将会提供32个覆盖采样,从而最大限度减少了毛边效果。 另外,由于“透明覆盖”不支持DX9,因此在DX9游戏当中无法实现32xCSAA效果。不过NVIDIA为此推出了一种“透明测试(alpha test)”技术,使得TMAA能够转换DirectX 9应用程序中旧的着色器代码,让透明纹理的边缘硬化,从而加入“透明覆盖”,同样达到了不错的抗锯齿效果。 32x CSAA的效能也要比我们想象当中的快很多,在实际测试当中,如果8x MSAA性能为100%,那么32x CSAA的效能大约为8x MSAA的90%以上,甚至接近95%。从而为玩家开启32x CSAA提供了极大的可行性。 CUDA为游戏画质的改进 前面为大家介绍的是GF100架构方面的改进,并且让大家同时了解到架构改变带来的一些画质方面的改变。接下来我们再来谈谈GF100在CUDA方面的改变,本节当中主要讨论GF100从CUDA做出的游戏画质方面的提升,对于CUDA架构,我们将在后文当中为大家介绍。 随着GPU性能的高速发展,NVIDIA在G80时代首次提出了CUDA架构的概念,让GPU摆脱了仅为玩游戏的理念,提升到了一个全新的层次。在GF100当中,NVIDIA再次让CUDA发挥出了更多的优势,这其中包括了PhysX以及光线追踪两个方面的重大进展。究其原因,主要在于GF100当中的64KB共享缓存/L1缓存以及768KB的L2缓存设计。由于共享缓存当中的数据仅在Runtime时有效,而光线追踪、物理加速、人工智能等计算经常要长期调用数据,因此L1缓存以及768KB的L2缓存在此时就发挥出了重大作用。 除了缓存的增加外,GF100还在线程调度方面做了重大改进。好比一帧游戏画面当中,同时出现了布料效果、流体效果等较小的内核,同时还伴随较大的如渲染内核出现,那么GF100将会把这些内核统一分配,尽最大限度的将CUDA核心全部沾满,提升程序的运行效率。当然,这在一些并行计算当中实际并不敏感,因为大多并行计算对延迟并不敏感,且这类数据大多为同一个巨大内核。 游戏当中的每一帧画面都会出现上下文切换的情况,例如,在一帧游戏画面当中GPU要进行的计算包括了DX11效果渲染、PhysX物理计算、DirectCompute后期处理,甚至包括未来的光线追踪等,这就需要GPU能够在计算每一帧游戏画面时能够实现非常快速的上下文切换速度。在GF100当中,NVIDIA已经将上下文切换速度提升到了20微妙,这都是GF100在调度方面改进后的效果。 根据NVIDIA给出的信息,GF100将会在如下方面做出不小的改进: 新颖的渲染算法 接下来,我们就来看看GF100为我们带来的两个新亮点:光线追踪技术以及平滑粒子流体力学。 光线追踪性能提升 光线追踪这一技术很久以前就已经被好莱坞电影制片商所应用,但是在家用游戏领域,这一技术却迟迟没有得到推广。原因并非是光线追踪的技术有多高超:我们知道,普通游戏对于画面的渲染要达到每秒要几十帧甚至上百帧,而光线追踪技术不仅以往的GPU无法做到及时渲染,甚至还需要几个小时甚至更久的时间来渲染一帧的画面。 这种情况对于好莱坞的电影开发商来说并没有关系,因为他们可以花费半年甚至一年的时间制作一部仅有90分钟时长的电影,他们可以尽情的将每一帧画面做到极致,花费一两天的时间都有可能,对于玩家来说,有可能承受这样漫长的等待么? NVIDIA为了早日将光线追踪这一特效引入到游戏当中,在GF100产品设计之初就已经将其纳入计划当中。虽然在GF100当中还无法做到电影级光线追踪效果的实时渲染,但是相对于上一代产品来说,GF100已经在这一方面有了重大的改进以及性能提升。 在光线追踪的算法中,GPU需要反复的进行循环计算,这也是以往GPU无法胜任的一个重要原因——无法支持硬件循环。除此以外,由于光线追踪计算的光线为不可预测的,因此这就需要占用大量的随机存储器进行存取。 在GF100上,不仅首次支持了硬件循环。同时,通过提升L1、L2的缓存存取性能以及容量,也为大量随机存取数据提供了更好的支持。以上两点以及GF100的出色性能表现造就了GF100架构在光线追踪方面的巨大性能提升。 另外,在路径追踪等高级全局照明算法中,GF100的架构设计也让其得到了更好的性能。从上图来看,GF100的路径追踪性能表现将会达到GT200的四倍之多。 虽然如此,GF100还是很难够实现光线追踪的实时渲染。不过这并不意味着光线追踪无法应用到游戏当中。游戏开发者可以选择性的加入光线追踪效果,例如使用光栅化以及CUDA的合作方式,将场景的第一个通道使用光栅化处理,而随后的光线追踪效果则交由GPU计算完成。这样以来,能够在光线追踪的效果以及性能方面找到更加合适的切合点。 NVIDIA推出的交互式光线追踪演示DEMO NVIDIA还专门为光线追踪推出了一个名为OptiX的引擎,这一技术在09年的8月被NVIDIA首次亮相,于11月左右正式推出。开发者可以使用这套引擎来对交互式光线追踪效果进行开发。并且针对Quadro以及Tesla用户提供了免费下载。上图当中就是采用了OptiX引擎开发的一套交互式光线追踪渲染的画面,可以看到车身上的反光效果近乎达到了真是的程度。关于这款DEMO演示我们也将会在后文当中为大家介绍。 平滑粒子流体力学 在NVIDIA产品当中,一项始终让竞争对手无法超越的就是PhysX技术了。虽然目前为止,NVIDIA的PhysX技术已经非常成熟,并且得到了不少游戏开发厂商的认可,但是NVIDIA还是不断的在此方面有所提升。在GF100当中,NVIDIA再次将PhysX的性能向前迈进。本节当中,我们已平滑粒子流体力学为例,来为大家介绍PhysX的改进。 我们依然用去年底上映的好莱坞大片《2012》来为大家介绍。在电影《2012》当中大量的海水、巨浪以及天气效果都与“水”息息相关。而通过物理计算,能够让这些水面、气候效果看起来更加的真实。由此看来,与“水”相关的物理加速同样会为玩家带来更好的游戏效果。 平滑粒子流体力学(SPH)演示DEMO截图 与“水”相关的物理加速效果,在2003年由Müller等人开发的交互式流体模拟算法——平滑粒子流体力学(SPH,smoothed particle hydrodynamics)的天体物理学算法,演示了5000个SPH粒子以每秒5帧的速度模拟一杯水倾泻出来的效果,得到了广泛认可,并且最终被收录到PhysX的算法当中。而应用到这种SPH算法的首款游戏就是《雪域危机》,并且在这款游戏当中能够在极短的时间内模拟30000个水粒子。不过由于GPU的性能不足,30000个水粒子仍然无法表现出更加真实的流体效果,但是在GF100当中得到了改进。 根据NVIDIA的资料表示,GF100是首款能够实现模拟接近真实流体效果的GPU产品。在GF100当中,NVIDIA专门为SPH算法加入了改良后的解算器,配合GF100的出色并行计算能力,游戏开发者可以以每帧128000个粒子的数量加入到游戏当中,并且GF100还能够保持较高的帧数渲染。在粒子数量激增到128000个后,模拟雨水效果、水花效果、漩涡效果、溢出效果等将会得到更加真实的表现。 除了能够模拟水滴效果外,SPH算法还能够模拟泥浆、血液、油料等不同特质的流体。例如在血液当中,其粘稠度以及滴溅的效果均与普通水滴不同,开发者可以通过SPH调节用来模拟血液的粒子参数,来达到更加拟真的程度,因为无论是水滴、血液、油料等不同液体材质其物理特性大体相仿,都能够通过SPH算法进行模拟。 从架构上来说,SPH算法几乎不会利用共享存储器以及L2缓存,因此可调节的64KB片上缓存就成为了SPH算法的制胜法宝。通过调整,SPH算法可以享用到48KB的L1缓存,并且由于极少采用L2缓存,因此其存取速度得到了大幅提升,并且这样的算法能够为其他需要L2缓存以及共享缓存的进程最大程度的节省空间,配合20ms的切换速度,让SPH算法在GF100当中得到了最大程度的提升。 GTX400产品市场定位 NVIDIA首发的GeForce GTX 400系列包括GeForce GTX 480以及GeForce GTX 470两款。其命名规则依旧延续了NVIDIA上一代产品的命名方式,从“GTX”当中我们可以了解到这两款产品面向高端用户,而“480”以及“470”则分别表示了高端顶级以及高端次顶级的产品定位。其竞争对手也必然锁定了ATI的Radeon HD 5870以及Radeon HD 5850。 由于在GTX480/470上市前,NVIDIA的上一代高端产品GeForce GTX 285~260+已经全线停产,因此这两款产品上市后的定位并不会与前代产品重合。并且根据NVIDIA的一贯政策——新品发布定价较高,因此即使目前仍然有中高端的GTX200系列产品在售,也不会重复价位的情况。下面就是GTX480/470发布后的市场价格分布图: NVIDIA给出的GeForce GTX 480官方定价为499美元,折合人民币大约为3500元左右;GeForce GTX 470定价为349美元,折合人民币大约为2450元。两款产品的定价均要高出竞争对手的同等级产品,但是对于高端产品来说,这样高出的幅度并不算太过明显。当然,价格是否合理,还是要以性能来说话,我们在后文当中会为大家进行全面的性能测试,究竟谁更有性价比,大家一看便知。 GTX400产品规格对比 前面我们花费了很大的篇幅为大家介绍了GF100的架构设计,但是对于GTX480和GTX470来说,GF100的架构并不能直接与这两款产品划等号。实际上,GTX480以及GTX470在规格方面都是经过GF100架构削减后的产品,而只有面向专业级用户的Tesla产品才会出现完整的Fermi架构产品。 ◆ GeForce GTX 480规格 GeForce GTX 480配备了总共480个流处理器(核心),相当于屏蔽了一组SM阵列。而在其他规格方面,GTX480将GF100的架构完整的保留了下来。显卡配备384bit显存位宽,显存容量达到了1536MB。官方公布的GTX480显卡运行频率为700/1401/3696MHz(核心/Shader/显存),为了让480个核心能够在如此高的频率下稳定运行,显卡标配一个6pin以及一个8pin辅助供电接口,单卡功耗达到了250W。 ◆ GeForce GTX 470规格 GeForce GTX 470在GF100的架构上削减了两组SM阵列,总共拥有448个核心。同时,显存位宽也被屏蔽掉一组,因此GTX470位宽为320bit,对应的显存容量也缩减到了1280MB。GTX470的公版运行频率为607/1215/3348MHz(核心/Shader/显存),相比GTX480降低了不少。由于核心数量、运行频率有了一定的下降,因此GTX470的供电也仅需要两组6pin辅助供电,单卡功耗也随之降低到215W。 ◆高端产品规格横向对比
虽然NVIDIA的产品与竞争对手ATI的产品规格并不具有直接的可比性,但是仍然有一定的参考价值。上表当中就是NVIDIA以及ATI目前在高端市场当中单核心产品的规格对比表格。 GTX400系列产品介绍 对某些朋友来说可能有些枯燥乏味的技术介绍完成后,接下来我们就一睹此次测试的两位主角——GeForce GTX 480以及GeForce GTX 470的真身。此次评测室收到的两款产品均为NVIDIA为我们送测的公版样品,两款产品均为黑色PCB、风扇设计,继承了近年来NVIDIA在高端产品走“黑酷”的风格。 接下来就进入实物大拆解的过程了。此次拆解过程当中,NVIDIA一丝不苟的作风让我们着实遇到了不小的麻烦——背面的固定螺丝几乎无法手工拆卸。评测室的三、四位编辑的轮番上阵,配合多个不同大小的十字螺丝终于让大家见到了这两款产品的真身…… GeForce GTX 480(1) 首先登场的自然是GeForce GTX 480显卡。公版GTX480显卡无论是PCB还是散热器均采用了黑色设计,在正面左侧的一道绿色弧线才让我们看出了这是一款出自NVIDIA的产品。 显卡的散热器部分设计颇有新意,散热器导风罩不再与散热器整体相连,而是通过塑料卡扣卡在与PCB连接的金属护板上,不知道这样的设计会不会引发一些AIC厂商的“换彩壳”情结。另外,GTX480显卡由于发热量较高,因此散热片并非完全藏匿在导风罩内,而是将一部分直接裸露在外,这一点大家通过上面的图片就能了解到。 显卡的输出接口采用了双DVI搭配HDMI设计。不过这里的HDMI并非标准接口,而是采用了MINI HDMI设计,因此对于有需要HDMI输出的用户,需要考虑到MINI HDMI转接的可能性。 将GTX480完全拆解后,可以看到显卡被拆分为四大部分,包括导风罩、散热片、金属固顶板(被数十颗螺丝固定贴附在PCB上,并且装有散热风扇)以及PCB主体。接下来,我们就来仔细了解一下GTX480的各个细节。 GeForce GTX 480(2) ◆ 散热器解析 拆解后,我们先来为大家介绍GTX480的散热器部分。作为NVIDIA目前最为顶级的单核心显卡,GTX480的散热器采用了全镀镍设计,整体光泽度十足,宛如一件工艺品。并且,别看散热器个头不大,但是其容纳了5根热管,重量方面也相当可观。 无论是ATI还是NVIDIA,在其高端产品上一直喜爱使用涡轮风扇作为显卡的散热风扇。这样的设计能够最好的满足机箱风道,并且对双卡互联起到了良好的支持。除此以外,为了增加涡轮风扇的进风量,显卡PCB背面还被可以镂空,更好的保证了SLI系统下主卡散热器的进风。 ◆ PCB及部件解析 接下来我们再来看看显卡的PCB设计部分。作为顶级的GTX480显卡,摘下散热器后我们可以看到,显卡的PCB虽然长度达到了10.5英寸,但是设计依然十分紧凑。由12颗显存颗粒围绕在GTX480核心周围,PCB右侧则主要集中了显卡的供电部分。 之前我们一直在讲,GTX480采用了GF100的核心架构,不过并不完全等同于GF100。从上图中可以看到,GTX480采用了代号为GF100-375的显示核心,而最后的“A3”则表示了这款核心为第一次设计的第三个改进版本。 GTX480同样采用了最流行的GDDR5显存设计,产品则选择了玩家们口碑最好的三星颗粒。从产品规格上来看,显存的理论运行频率应远高于GTX480默认的3696MHz,不过NVIDIA为了稳定起见,并没有设定过高的频率。同时,显卡的功耗本身已经较高,如果再次拉升显存频率,那么功耗/性能比则达不到更理想的水平。 由于GTX480核心功耗要求加高,因此显卡辅助供电方面保留了8pin+6pin的方式。同时,显卡核心的供电电路也达到了6相之多,这在公版单核心顶级产品当中还是比较少见的。另外,为了满足容量达到1536MB的显存供电需求,显卡也为其配备了两相供电电路。 GeForce GTX 470(1) 与公版GeForce GTX 480相同,GeForce GTX 470同样采用了黑色散热器搭配黑色PCB的设计方式,不过这款产品上我们没有看到象征着NVIDIA产品的绿色标记。 由于流处理器数量以及显存位宽的缩减,让GTX470显卡的发热量已经明显比GTX480下降了很多,因此散热器不再需要裸露在导风罩外面。不过NVIDIA为了保证散热性能的出色表现,同样为其配备了5根热管设计。另外,导风罩的设计同样为塑料卡扣的方式,预计将会有不少厂商会对导风罩的外形重新设计。 与GTX480相同的是,GTX470同样搭配了两组DVI输出以及一个MINI HDMI输出接口,对于组建双屏输出的用户自然比较方便。同样的问题是,对于需要HDMI输出的用户可能需要自行准备MINI HDMI转接线。 虽然GTX470散热器并没有通过导风罩镂空出来,但是两者的安装方式基本相同。同样分为PCB、金属固顶板、散热器以及导风罩。 GeForce GTX 470(2) ◆ 散热器解析 在降低了GTX470的整体功耗之后,虽然散热器尺寸有了明显缩减,但是NVIDIA依然搭配了5根热管设计,以保证GTX470在最高负荷情况下能够提供更高的导热效率。可能是由于GTX470散热器不在外露的原因,NVIDIA没有为公版的GTX470散热器采用镀镍设计。 GTX470同样采用涡轮侧吹风的散热设计方式,能够直接将显卡产生的热量通过第二个镂空PCI挡板散发到机箱外部,而不会对机箱内其他发热设备造成额外负担。 ◆ 显卡主要部件解析 GeForce GTX 470同样给予GF100核心架构,从上图中可以看到,GTX470核心编号为GF100-275,同样为A3版本。有趣的是,GTX470核心代号中的“275”正是GTX470要取代的同价位产品,不知道以后大家是否很容易将这两者搞混。 GTX470同样搭配了GDDR5显存颗粒,并且同样选择了三星产品。与GTX480不同的是,GTX470当中采用了编号为“HC05”的显存颗粒,频率设定为3348MHz,还有较大的剩余空间。 显卡供电部分采用了4+1的方式,其中PCB的右下角集中了4相显存供电电路,且旁边立满了密密麻麻的固态电容。而显存供电采用了1相设计,被安置在显存的右上角。 [第二章]游戏新体验,实际DEMO演示
下面我们即将演示的DEMO当中,将会包括NVIDIA的GF100开发演示Demo、DX11技术演示Demo,以及微软的DX11 SDK演示Demo。这些DEMO当中,将会包含PhysX技术、Tessellation、光线追踪等等诸多方面的技术,让大家看到这些新技术所能为游戏或应用程序带来的画面提升。 在这些Demo的演示当中,我们将会与技术、架构以及Demo相结合的方式来为大家讲解。并且这些Demo当中,也不乏一些非常有趣或有可玩性的Demo,大家也可以当做娱乐休闲一下。好了,闲言少叙,接下来就让我们就从首款Demo开始。 超现实水面技术Demo ◆ 超现实水面、地形技术Demo简介 Demo由NVIDIA开发,该Demo应用了Tessellation(曲面细分)、Displacement mapping(置换贴图/位移映射)等技术构建了海洋上的一片小岛。投射到游戏中,该Demo主要实现的是海洋、水面及自然地形环境等的渲染。在Demo中,超逼真的海水和地形设计是展示的主要方面,细致的地形和微微泛起波浪的水面构建了几乎真实的场景环境。 Tessellation(曲面细分)我们已经在前文中大量介绍,而Displacement mapping(置换贴图/位移映射)技术的初衷是为了解决内存和GPU之间的带宽问题,它同凹凸贴图、法线贴图等技术类似,是制造凹凸细节的技术解决方案,它使用一个高度贴图制造出几何物体表面上点的位置被替换到另一位置的效果,另外该技术是同类技术中消耗性能最大的。 ◆ 超现实水面、地形技术Demo使用方法和展示 该Demo只是进行技术展示,可操作性并不大。下图展示了可以实现的一些功能调节。右侧的调节部分包括比如全频切换、视角切换等等。两个平衡杆可以调节动态Tessellation的复杂度和静态Tessellation,对于自然环境来讲,复杂细致动态的凹凸感可以很好的刻画写实度。 Demo由NVIDIA开发,该Demo主要应用了Tessellation(曲面细分)技术构建了一个简单的人体头发模型。投射到游戏中,该Demo主要实现的是人物的头发,乃至衣物、飘扬的旗帜等的渲染。该Demo除了一个简单的人物上半身模型、贴图和光照外,主体展示的就是人物的头发,随风飘动的头发非常写实。 ◆ 超现实头发技术Demo使用方法和展示 该Demo只是进行技术展示,可操作性同样并不大,但是可以调节的地方比较多。下图展示了可以实现的一些功能调节。右侧的调节部分包括比如全频切换、视角切换等等。略微下方的地方可以实现Demo的自动运行,或者调节头发的长短。 右侧调节栏的下半部分有三类选项,第一类是调节风力的开启、关闭和风量大小的控制。 第二类选项则是控制阴影、硬件Tessellation的开启和关闭,以及Tessellation动态细节的复杂程度。当然,开启硬件Tessellation会大幅提高渲染的帧速度。 第三类调节主要是显示地板、面部、阴影等等选项,如果关闭这些效果可以进一步排除其他渲染对Tessellation测试的影响。 超音速轨道车技术Demo ◆ 超音速轨道车技术Demo简介 Demo由NVIDIA开发,该Demo主要应用了PhysX(物理加速)技术。该Demo相对比较完整,甚至可以实现游戏的功能。Demo的场景建模、光影效果不错,但是这个Demo重点突出的还是PhysX物理特效。 超音速轨道车需要玩家控制轨道车在一个固定的轨道上运行,在最短的时间内抵达并停稳在跑道的终点,玩家需要控制速度和刹车来避免轨道车因为过多的冲击而损坏,同时可以使用喷射器加强速度,获得最短的时间是该Demo游戏性的诉求。 在该技术Demo中实现了多方面的PhysX效果展示,包括启动时的烟雾粒子、轨道车运行中的人物面部肌肉效果,以及在中途被损毁的房屋和桥梁,对于不支持PhysX物理效果GPU加速的产品,该Demo的运行速度会非常低。 ◆ 超音速轨道车技术Demo使用方法和展示 该Demo不仅进行技术展示,还可以让玩家在操作中体验PhysX所带来的逼真游戏感受。游戏的可调节选项比较多,最上面的工具栏提供了主要的设置选项,包括渲染的模式等。右上方是速度、加速度等数据的显示。 下面的控制选项为视角:包括自动,锁定轨道车前部、后部,锁定房屋,锁定桥梁等视角。中间为轨道车的控制:加速、减速等。再右侧为加速器(可使用4次)和反加速器(刹车时使用)。 Demo截图对比和欣赏(1) ◆ 渲染方式截图对比 ◆ PhysX物理渲染面部肌肉和人体模型截图展示 ◆ PhysX物理渲染木头小屋的损毁截图展示 Demo截图对比和欣赏(2) ◆ PhysX物理渲染木桥的损毁截图展示 ◆ PhysX物理渲染其他截图展示 疯狂快艇技术Demo ◆ 疯狂快艇技术Demo简介 Demo由NVIDIA开发,该Demo主要应用了PhysX(物理加速)技术。该Demo主要展示在河流中的一个快艇,玩家可以控制快艇进行行进,中间会遭遇水流、石头甚至旗帜的阻碍。 该Demo同样展示了PhysX技术的方方面面,快艇的建模比较简单,因为它不是主要展示对象。Demo主要展示下一代水流的PhysX展示,包括水流、波浪、溅起的飞沫,以及刚体(快艇)与水流的互动,刚体(快艇)与布料(旗帜)的互动等等。 ◆ 疯狂快艇技术Demo使用方法和展示 该Demo只是进行技术展示,可操作性并不多,玩家可以控制快艇的走向,对抗水流、石头和旗帜的阻挡。该Demo基本上没有任何可以调节的选项,上下左右控制快艇的走向,鼠标控制视角,PageUp、PageDown控制视角的远近。 光线追踪车库技术Demo ◆ 光线追踪车库技术Demo简介 Demo由NVIDIA开发,该Demo应用了光线追踪技术,主要进行展示,玩家可以通过不同的设置来观看名车通过渲染实现几近逼真的画面效果,同时还可以保存为图片欣赏或发送给朋友。 其实熟悉显卡技术的玩家都见过该技术Demo,这个Demo早在几年前就已经发布,但是因为这个技术所耗费的显卡资源过大,以至于NVIDIA最早展示该Demo的时候使用的是多路专业卡进行实时渲染,而随着GTX480的发布,玩家们得以亲身体验该技术Demo,仅一块GTX480显卡就能实现不错的渲染速度。 光线追踪(Ray Tracing)是微软DirectX10发布后融入其中的一项重要的新技术,它是一种“来自几何光学的通用技术,它通过追踪与光学表面发生交互作用的光线,得到光线经过路径的模型”。简单来说,它是实现在2D屏幕环境下确保3D画面看起来更真实的一项技术。 另外,在今年年中,NVIDIA还发布了实现光线追踪的引擎OptiX,该引擎基于CUDA架构,开发者可以使用C语言编程,创造基于GPU运算的光线追踪应用。OptiX的应用既包括照片式渲染、车辆设计等图形领域,也包括诸如光学和声学设计、辐射研究、容积计算、碰撞分析等非渲染应用中。OptiX引擎的推出为光线追踪技术实现商用打下了良好的基础,而本次车库Demo仅供玩家体验这项新技术。 ◆ 光线追踪车库技术Demo使用方法和展示 该Demo只是进行技术展示,玩家可以选择不同的车辆,选择不同的场景,另外可以控制光线的强度,从而模拟中午乃至黄昏、晴天或者阴天等不同的光照状况下,光线模拟的真实情况。 Demo的控制选项都在正上方,包括不同车型的选择,不同场景的选择等等。下面我们就来看看不同设置条件下,渲染出的画面水平。 Demo截图对比和欣赏 光线浑浊度最低 光线浑浊度最高 ◆ 光线追踪Demo天气效果截图对比 阴天效果,光线不充足 晴天效果,光线很充足 ◆ 光线追踪Demo景深效果截图对比 最大景深效果 无景深效果 微软DX11 Demo介绍(1) 作为DirectX11标准的制订者,微软近期也发布了针对开发人员的DirectX11 SDK开发包,其中包括了很多DirectX11的应用方案和演示Demo,下面我们就来通过微软的技术Demo来展示一些DirectX11的技术特性,而展示的主要方面就是DirecrX11最关键的技术Tessellation。 ◆ PN Triangles11 Demo截图展示 该Demo同样考察Tessellation技术,最上面是设置面板,可以调节分辨率、画质等。 ◆ Catmull-Clark Subdivision Demo截图展示 该Demo同样主要考察Tessellation技术,渲染的主体是人物,而枪械不是Tessellation渲染的物体。 微软DX11 Demo介绍(2) ◆ Detall Tessellation Demo截图展示 这是微软SDK中一个专门进行Tessellation展示的技术Demo,玩家可以选择场景的类型,比如石头、墙面等等。下面我们看看不同设置下渲染的区别: ◆ 几种不同渲染模式的对比 下面几种渲染方式都为了实现最小的资源消耗而提高物体细节的目的,但是却伴随着不同的DirectX版本而逐渐升级,随着图形技术的发展,其所能实现的效果越来越好。下图首先是Bump Mapping凹凸映射: 前文当中,我们主要为大家介绍了GF100产品的图形架构方面的技术以及几款演示DEMO。而实际上,采用了Fermi架构的GF100核心在并行处理方面同样进行了非常大的改进。接下来的这一章节当中,我们将以并行计算的角度,再来为大家介绍一下Fermi架构在此方面的优势。 提到NVIDIA产品的并行计算,人们第一个想起的肯定是CUDA这个词。CUDA允许编程人员使用多种高级语言来针对GPU进行编程设计,在最新的GF100架构当中,还加入了最流行的C++语言以及Nexus支持。CUDA的出现让编程人员无需再去重新学习API开发,而直接使用高级语言就可实现对GPU的控制,这在DX11当中也得到了充分的认可,只是微软的技术叫做DirectComput。 G80架构已经开始提出了CUDA概念 CUDA的第一次出现是在G80统一图形以及计算架构问世之后。G80是NVIDIA的一代经典之作,时至今日,我们仍然能够看到NVIDIA的产品上保留有G80产品架构的一些影子。G80提出的CUDA是一种对软件以及硬件架构的统称。在NVIDIA的第二代统一架构产品——GT200出现之后,NVIDIA更加确定了CUDA的发展路线,并且将G80当中的流处理器重新改名为CUDA核心。其数量也由128个增加到了240个,同时为了能够处理更多的线程,再次将共享存储器容量翻番。另外,在GT200核心当中,还加入了对双精度浮点运算的支持。 可以这样说,G80是NVIDIA向并行处理迈出的第一步,而GT200则是NVIDIA将G80改良后的第二代产品。不过今天我们要为大家介绍的GF100并非是NVIDIA再次改良的产品,而是一款几乎重新设计的产品,NVIDIA将其称之为世界上第一款计算GPU。在NVIDIA通过对G80以及GT200使用者的调查后,重新设计出来的GF100在诸多方面均有改进,主要变化如下: 第三代流处理器簇(SM) 本章当中,将会以如上四点为大家详细介绍GF100在并行计算当中的改进以及优势项目。不过在此之前,我们再来为那些入门玩家介绍一下有关CUDA的背景。 CUDA计算的基本结构 前面我们说过,CUDA是对软件以及硬件架构的统称。CUDA允许编程人员使用C、C++、Fortran、OpenCL、 DirectCompute以及其他语言所编写的程序对GPU资源进行调用。CUDA的程序被称之为kernel,kernel则是由一组线程以并行的方式进行计算。这些线程则是由程序员或编译器以线程块和由多个线程块组成的线程块格为单位组织起来。GPU将一个kernel程序具象化为一个由多个线程块组成的线程块格。线程块中的每个线程执行kernel的一个实例,在线程块中都有自己的线程ID、程序计数器、寄存器、逐线程专有存储器、输入及输出结果。 线程块指的是通过障栅同步和共享存储器彼此协作的一组执行线程。在线程块格中,每个线程块都有自己的ID确保各个线程块的调度以及区别。 线程块格是由一组执行同一个kernel的线程块所组成的,块格需要从全局存储器中读取输入和向其中写入结果,并在相依的kernel调用间进行同步。在CUDA并行编程模型中,每个线程都有一块私有空间,用于寄存器溢出、函数调用以及C的自动数组变量。每个线程块都有共用空间,用于线程间通信、数据共享以及并行算法中的中间结果共享。由线程块组成的块格在全局存储器中共享结果,但必须在以kernel为宽度的全局同步完成之后才能进行。 ◆ 硬件执行 上面所讲述的是在并行计算时,CUDA的线程层次分布关系。在其硬件执行当中,实际上不同层次的线程执行过程与图形处理当中的kernel执行过程一一对应,我们可以简单的将其理解为图形处理时的另一种名称。当GPU接收到一个或多个kernel块格的指令之后,在一个SM阵列当中就会分为一个或多个线程块,每个核心或SM阵列当中的其他执行单元(如存取单元、特殊功能单元)则分配到执行线程的等级。 如果上面所说的形式过于死板,那么我们用一个小学当中经常出现的情况举个简单的例子为大家说明。当一个班(GPU)收到打扫卫生的命令(一个kernel块格)后,老师(GigaThread引擎)就会将打扫卫生的任务分派到各个小组(SM阵列)当中,而各个小组长(warp调度器)会将老师传达的多种可同时执行的命令(如擦玻璃、扫地、打水,相当于线程块)分派到小组当中的每一个人(CUDA核心)身上,各个小组的组员就会对各自收到的命令开始工作(如A组同学甲扫教室左侧桌椅下的地面、同学乙扫教室中间桌椅下的地面、……,相当于每个线程)。 虽然说老师可以跳过小组长直接为各个组员直接下达命令,显然这样的操作将更加烦琐且花费时间。当然,执行一次这样的操作可能并不会花费太长时间,可是如果每天进行一次这样的扫除,那么各个小组长将会对小组分工更加明确且快速(我们可以看作在warp中执行同样代码的线程并且在近程地址中作内存存取),此时老师仅需下达打扫卫生的命令,各个小组组长就已经可以开始对组员进行分工了。这样的分工,显然能够更好的提高效率。 回到GPU当中,我们前面的举例只能比较浅显的解释GF100架构的执行效率以及kernel块格、线程块、线程,不过两者确实具有很多相似之处。 ◆ GF100 CUDA架构概述 在并行计算当中,GF100的架构设计与CUDA并不会出现本质的变化。下图就是GF100的CUDA架构图。在GF100当中,使用了多达30亿个晶体管数量,CUDA核心达到了512个(GTX480为480个,并且只有15个SM阵列,只有在专业图形卡领域当中才会有512个CUDA核心的产品),他们被平均分到32个SM阵列当中,共计16个SM阵列,拥有6组64bit显存位宽控制器,总位宽达到384bit,最高支持6GB的GDDR5显存。在一个时钟周期内,每个CUDA核心能够执行一个线程当中的一条浮点或整数运算指令。 每个CUDA内核都有全流水线化的整数算术逻辑单元(ALU)和浮点单元(FPU),并且还能够支持全新的IEEE 754-2008浮点标准,为单精度和双精度算法提供FMA指令。这一点与GF100的图形处理架构近乎相同。同时ALU也将提供32位精度计算,并且优化后的ALU还能够支持64为及更高的精读操作。除此以外,它还能够支持Boolean、shift、move、compare等指令。 ◆ 双精度设计 在并行计算当中,双精度计算能力是HPC应用程序执行能力的重要考量,例如线性代数、数值模拟以及量子化学等。GF100将每个SM阵列当中单个时钟周期的执行能力提升到了16个双精度FMA指令,相比上一代产品有了明显提升。 上表是从G80开始,到GF100产品上,在CUDA方面的改进。另外,关于存取单元(LD/ST)、特殊功能单元(SFU)、双warp调度器以及64KB片上缓存相比图形渲染架构并没有太大变化,本节不再重复。 第二代并行线程执行ISA 采用了Fermi架构的GF100,首次提供了对并行线程执行(后文简称PTX)2.0指令集的支持,并且Fermie也是第一个支持这种指令集的架构。PTX是级别较低的虚拟机和ISA,目的是为了支持并行线程处理器的运作。在PTX被载入的时候,PTX指令会被GPU转换为可读的机器代码。 PTX 2.0增加了很多新特性,如:IEEE 32位浮点精度、所有变量和指针都有统一的寻址空间、支持64位寻址、以及针对OpenCL和DirectCompute的新指令。在PTX 2.0当中,最重要的就是加入了对C++语言的支持,是更多程序员的福音。PTX 2.0的支持,将会对GPU的可编程性、精度以及性能方面带来较大的提升。 ◆ 统一寻址空间实现完全的C++支持 由于C语言以及C++语言当中的指针的目标寻址空间需要进行统一,而PTX 1.0规范当中存取指令会在线程的私有局部空间、线程块的共用空间、全局空间三个不同存取空间动态出现,这在C语言以及C++语言编程当中很难实现。因此到了PTX 2.0当中将存取操作的寻址空间进行了统一,把三个寻址空间都统一为一个单独、连续的寻址空间,因此只需一套存取指令。统一寻址空间为40位,可以支持1 Terabyte的可设定地址的内存。同时,为了适应未来可能的增长,存取ISA支持64位寻址空间。 在C++中,所有的变量和函数都存在于对象中,而对象又通过指针进行传递。有了PTX 2.0,就可以利用统一的指针传递任意存储空间里的对象。Fermi的硬件地址转译单元自动将指针参考映射到正确的存储空间。 我们继续使用一个班来做比喻,每个小组就是一种存储空间(私有局部缓存、共享缓存、全局缓存),指针好比每个小组的组长(实际程序中只会有一个指针),而每个小组的组员的编号好比寻址空间,而小组组员的这位同学就是空间里的对象。在PTX 1.0当中,老师想要寻找一位同学切面对三个小组只有一次调用组长寻找的机会,因此老师很难直接寻找到这位同学。而PTX 2.0当中对寻址空间的统一好比将三个小组重新合并为一个班(实际上还是三个小组),直接由班长点名寻找这位同学,就不会再出现之前的状况了。 Fermi和PTX 2.0 ISA还支持C++虚拟函数、函数指针、针对动态对象分配、解除分配的“new”和“delete”操作以及针对异常处理的“try”和“catch” 操作。 ◆ 针对OpenCL和DirectCompute的优化 作为同是用来并行计算的OpenCL和DirectCompute,实际上从根本架构出发来看,三者的关系非常相似。可以说经过优化后的GF100 CUDA架构,实际上已经完成了对OpenCL以及DirectCompute的优化。并且GF100还为OpenCL和DirectCompute的surface格式转换指令提供硬件支持,允许图形与计算程序能简单地对相同的数据进行操作。除此以外,PTX 2.0 ISA还为DirectCompute提供了population count、append以及bit-reverse指令的支持。 ◆ IEEE 32位浮点精度 GF100当中的单精度浮点指令现在在硬件上默认支持非规格化数以及IEEE 754-2008所有四种舍入模式(最接近、零、正无穷大、负无穷大)。 非规格化数是分布在零与给定的浮点数系统的最小规格化数之间的非常小的数。前一代的GPU会将非规格化操作数和结果冲刷为零,从而导致精度上的损失。CPU通常在异常处理软件中进行非规格化计算,这需要消耗数千个周期。Fermi的浮点单元能以硬件方式处理非规格化数,使得数值逐渐下溢至零而不导致性能上的损失。 在电脑图形、线性代数和科学应用中常见的运算操作序列是把两个数相乘然后把获得的积与第三个数相加,例如D=A×B+C。前一代GPU使用MAD指令实现加速,允许两个运算在单个周期内完成。在MAD指令中,乘运算后的结果作为中间结果是会被切掉部分,并在接下来的加法运算中使用“舍入到最近偶数”的方式作舍入操作。GF100对32位单精度和64位双精度浮点数(GT200仅对双精度运算采用FMA指令)运算采用新的FMA指令,可以保证运算执行的中间结果得以全精度保留。提升精度可以让多种算法获益,例如精密的交叉几何体渲染、迭代数学方面的高精度计算以及快速准确舍入的除法与平方根操作。 ◆ 预测功能带来改进的条件性能 在GF100的ISA中,以前用于不同线程管理的本机硬件预测支持现在被应用于指令一级。预测能够使较短的条件代码段高效执行,无需调用分支指令。 5回顶部 内存子系统的创新特点 ◆ 并行Parallel DataCache技术 对于各种不同的应用程序来说,虽然共享缓存能够解决不少问题,但并非能够解决所有问题。程序当中经常会出现关联共享缓存的情况,而有些程序则更希望调用高速缓存,甚至还有要求两者全部调用的情况。为了让这些程序能够得到更好的优势,且满足不同的需求,GF100设计了全新的内存层级结构。 在GF100当中,抛弃了原有的纹理操作提供只读而像素数据提供只写的情况,改为了全新的加载/存储单元。并且在GF100当中的每一个SM阵列当中均增加了一个L1高速缓存,同时配备所有SM阵列可以共享的L2缓存,如此以来所有读取以及存储操作均可被支持。在每个SM阵列当中的64KB缓存上,可以将其分为48KB共享缓存和16KB的L1缓存组合,也可分为16KB的共享缓存和48KB的L1缓存组合。对于例如电子动态模拟这类需要大量使用共享缓存的程序,其性能将得到三倍左右的提升,而对于一些无法确定内存访问情况的程序,48BK的L1缓存设置则将会发挥更大功效。 不管L1缓存容量是16KB还是48KB,它都可以通过复杂程序缓存在临时寄存器出现溢出情况有所帮助。因为在这之前,GPU在计算当中如果出现寄存器缓存溢出的现象那么这些数据将会交给DRAM来存取,访问时间必然无法与高速缓存相媲美。 除了容量更大的L1以及共享缓存设计外,GF100还加入了一个768KB的L2缓存设计,能够支持所有存取及纹理请求,并且能够让不同SM阵列之间进行高效的数据共享,避免了DRAM的延迟。 ◆ 首款支持ECC效验的GPU 对于专业应用领域的Fermi架构,NVIDIA首次提供了ECC内存效验的支持,这也是显卡领域当中首款提供ECC效验的产品。ECC效验很久前就已经应用在电脑系统中了,而此次加入到显卡当中,将会对显卡执行并行处理提供更高的数据完整性,这将在医疗成像等要求数据准确性的行业当中提供更可靠的保障。 存储在内存当中的数据有可能会受到自然发生的辐射被更改,导致最终的数据错我,而ECC技术在错误影响到系统之前就能够发现并纠正。小范围的并行计算(例如单卡)可能并不会导致最终数据过大的错误,但是对于大型集群的密集计算来说,这样的错误往往会导致致命的问题,由此ECC技术就是一个必备需求了。 Fermi的寄存器文件、共享内存、一级高速缓存、二级高速缓存和DRAM内存均提供有ECC保护功能,它支持单错纠正双错检测(SECDED)ECC 代码,能够在数据被访问期间纠正硬件中的任意单位错误。此外,SECDED ECC 还确保了所有双位错误和众多多位错误能够被发现和报告,以便能够重新运行程序,而不是继续执行不良数据。 ◆ 快速原子内存操作 原子内存操作对于并行编程非常重要,它们能够允许多个线程在共享数据结构上正确执行读-修改-写操作。诸如加、减、最大值和比较-交换等原子操作均为原子级别,意味着在执行读、修改和写操作时不会被其它线程所中断。得益于硬件中多个原子单元的组合,以及二级高速缓存的添加,Fermi的原子操作性能比GT200一代高出20倍之多。 GigaThread引擎实际上在G80当中就已经出现过,当时的GigaThread引擎能够管理最多12288个线程。在Fermi架构当中,GigaThread引擎得到了再次提升,并且加入了最新的双级分布式线程调度器技术。GigaThread引擎负责将准备处理的线程块格为不同的SM阵列分配为线程块,而每个SM阵列当中的双Warp调度器负责将每个线程块分配为32个线程。Fermi的GigaThread引擎提升了线程吞吐率,同时动态加快了上下文交换、并发内核执行、以及改进的线程块调度等操作。 ◆ 应用程序情景切换 对CPU架构了解的朋友应该知道,在CPU内会使用上下文交换来支持多任务处理,在GPU当中的操作方式亦此。相比上一代产品的上下文交换时间,此次Fermi架构缩短到了25秒,提升幅度达到10倍左右。并且,为了能够让显卡在不同应用之间进行互换(如图形渲染和PhysX计算)的速度,Fermi架构还允许开发人员创建出能够充分利用频繁内核间通信优势的应用。 ◆ 并发核心程序执行 在PhysX运算当中,经常会有流体以及刚体同时出现的情况,这就需要GPU能够同时对流体以及刚体解算器进行调用。因此,Fermi架构当中就加入了对并发核心程序执行的支持,其中同一应用上下文的不同内核能够同时在 GPU(图形处理器)上执行。我们依然用前面的例子来说明,如果流体解算器以及刚体解算器两者不能够支持并发核心执行,且两者任意一个操作均不能够完全占用整个GPU资源,那么按照顺序执行的情况下,GPU将会存在大量的闲置等待时间。而加入了并发核心程序执行之后,通过GigaThread引擎能够合理分配并且让所有核心并发执行流体解算器以及刚体解算器,不仅运算效能得到提升,同时也避免了GPU闲置情况。 2008年8月,NVIDIA首次曝光了最新的3D VISION立体幻境显示技术,在09年1月,我们硬派网显卡频道也首次为大家实际测试了3D VISION效果。它成为继PhysX效果之后,竞争对手又一项难以超越的技术(虽然目前ATI提供了3D显示技术,但实际产品仍未看到)。 在今年的CeBIT 2010大展上,NVIDIA再次将这一技术升级,提出了3D VISION Surround(3D环绕立体幻境)技术。这一技术通过最新的GF100 GPU,将会让玩家在目前最为真实的显示效果当中,获得最流畅的游戏体验。 想要实现3D VISION Surround技术,需要玩家至少配备两块GTX400或GTX200系列产品,并且搭配三台120Hz刷新率的液晶显示器,来配合NVIDIA的3D Vision设备。关于驱动程序方面,NVIDIA将会在4月份发布256驱动,提供全面的支持。至于游戏方面,实际上目前市场上的绝大部分能够支持宽屏显示的游戏都能够直接实现3D VISION Surround支持,而无需为游戏进行升级。 3D应用领域成为未来主导 目前,已经有越来越多的软件厂商、硬件厂商、网络等开始提供对3D视频、游戏的支持。目前市场上已经出现了诸如:3D在线视频、3D蓝光电影、3D游戏、3D数码相机、3D笔记本、3D显示器等产品,我们也将会在今后的市场上看到更多的这样的产品。 NVIDIA 3D VISION Surround的渲染能力最高可达每秒7.46亿个像素,是上一代顶级游戏配置的3倍。尤其是在开启Tessellation(曲面细分)、计算着色器以及PhysX之后,游戏对GPU的要求非常高。而GF100架构专为在3D VISION Surround上实现最高性能打造。 当然,三台普通显示器无法实现3D VISION Surround效果,但是依然能够使用两块GTX400或GTX200系列产品通过三屏实现Surround(环绕)效果,且能够支持三台每台分辨率为2560 x 1600的显示器。 ◆ 边框校正(Bezel Correction) 采用三屏输出,无法避免的一个问题就是显示器边框的干扰。例如两台显示器连接处由于边框的干扰将会导致画面的连接不顺畅。因此,NVIDIA为此推出了Bezel Correction(边框校正)功能。凭借边框校正功能,游戏视图的一部分可以隐藏到显示器边框后面,这样一来,边框似乎就成为游戏的一部分了。这样能够在多个显示器上呈现出更加连贯的图像,为玩家提供更加逼真的体验。它就好像乘客观看座舱窗外的风景一样,窗框挡住了玩家的一部分视线。 ◆ 测试平台
◆ 平台介绍 测试平台方面我们依然选择了一款技嘉X58主板,测试的CPU则选择了Intel的i7处理器,主频为3.2GHz。而测试内存方面,我们依旧搭配了三条DDR3内存(单条1GB),实际性能测试频率、时序为DDR3-1066 7-7-7-20。搭建这样的平台能够更好的体现显卡之间的性能差距,降低其它设备成为显卡性能发挥的瓶颈。 显卡方面NVIDIA此次发布的GeForce GTX 480以及GTX 470自然必不可少,同时还加入了竞争对手的两款顶级单核心产品Radeon HD 5870及HD 5850。除此以外,我们还加入了GTX 285的性能测试。 ◆ 测试项目 为了能够全方位的体现出GTX480/470的性能表现,此次测试当中选择了两款基准测试软件3DMark Vantage以及天堂2.0,分别考验DX10以及DX11的理论性能。 游戏方面则涵盖了从DX9至DX11的共计11款游戏,并且还包括了两款PhysX物理加速游戏,共计13款游戏。 ◆ 测试平台
◆ 测试产品 基准测试:3DMark Vantage /3DMark Vantage图形特点/: 对于3DMark Vantage我们肯定不能错过。3DMark Vantage基于全新的DirectX 10技术开发,与3DMark06相比,完全采用了全新的测试场景,其中两个GPU测试场景,两个CPU测试场景。在GPU测试场景当中,使用了最新的DirectX 10特效,对于不能够支持DirectX 10的产品来说,3DMark Vantage直接为他们选判了死刑。 /3DMark Vantage测试设置/: 测试软件:3Dmark Vantage Pro 1.00 基准测试:天堂2.0(DX11) /天堂2.0特点/: 游戏3D API:DX11 Unigine引擎发布了基于其Unigine引擎的首款DirectX 11显卡测试软件——Heaven。在GTX480发布前再次将其升级,加入了全新的测试场景,并且更加广泛的利用到了DX11当中的特效,对DX11显卡的性能需求更加苛刻。 /天堂2.0设置/: 测试设置为最高画质。 /天堂2.0方法/: 游戏自带BenchMark测试程序,运行多次取平均值。 6回顶部 DX9游戏测试:求生之路 /求生之路特点/:
《Left 4 Dead》使用强化版的Source引擎。游戏故事将描述在现代美国城市爆发出一种高度致命且传染快速的狂犬病毒,感染者外观、面貌不但变得恐怖异常,且心智狂乱,一见到未感染者就立刻加以攻击。 /求生之路设置/: 测试设置为最高画质。 /求生之路方法/: 通过控制台录制Demo,反复测试取平均值。 DX9游戏测试:使命召唤6 /使命召唤6特点/: 游戏3D API:DX9.0c 《使命召唤:现代战争2》是使命召唤系列游戏当中的第二部以现代战争为题材的游戏,加上Infinity Ward开发团队,让这款游戏备受关注。游戏剧情将会继续延续《使命召唤4:现代战争》的故事内容,不过官方表示,游戏并非刻画某些事情,而是尽量让这款游戏更像是观赏一部好莱坞大片。 /使命召唤6设置/: 测试设置为最高画质。 /使命召唤6方法/: 游戏固定场景采用Fraps辅助测试,运行多次取平均值。 DX9游戏测试:星际争霸2 /星际争霸2图形特点/: 游戏3D API:DX9.0c 《星际争霸Ⅱ》英文名称StarCraftⅡ,是由暴雪公司2010年推出的一款RTS即时战略类游戏,作为《星际争霸》的续篇讲述了人族、星灵和异虫三族的故事。《星际争霸Ⅱ》将以三部曲的形式推出,即Wings of Liberty(自由之翼)、Heart of the Swarm(虫群之心)和Legacy of the Void(虚空之遗)。 /星际争霸2测试设置/: 测试设置为最高画质。 /星际争霸2测试方法/: 通过录制Demo,反复测试取平均值。 DX10游戏测试:孤岛危机 /孤岛危机:弹头图形特点/: 游戏3D API:DX10 弹头并不是讲述上一部作品后续的事情,而是与孤岛危机剧情同步进展、发生在小岛另外一端的故事。游戏当中,玩家同样将会控制一名穿着纳米作战服的战士,不过这个战士名字叫Psycho Sykes,并且这名军士是一位来自英国的军人。 /孤岛危机:弹头测试设置/: 测试了设置为最高、高两种画质,其中最高画质时开启了DX10效果。 /孤岛危机:弹头测试方法/: 第三方BenchMark测试场景,运行多次取平均值。 /查询 孤岛危机弹头 配置要求、性能指数/ DX10游戏测试:生化危机5 /生化危机5图形特点/: 游戏3D API:DX10 《生化危机5》以延续一切故事开端的《生化危机》洋房危机10年后为背景,故事舞台搬到了人类发源地非洲,在这块炎热的大地上拥有并非僵尸也不属于寄生兽的敌人,饱经历练的克里斯(Chris)将与新搭档席娃(Sheva)共同面对潜藏于黑暗大陆的神秘生化危机。登场敌人部分,除了有玩家所熟悉的生化僵尸犬,貌似巨大蝙蝠的全新登场生化合成怪兽,以及受到寄生而失去理智成为嗜血杀人狂的电锯人、巨斧刽子手等也都将一一登场. /生化危机5测试设置/: 测试了设置为最高、高两种画质,其中最高画质时开启了DX10效果。 /生化危机5测试方法/: 第三方BenchMark测试场景,运行多次取平均值。 /查询 生化危机5 配置要求、性能指数/ DX10.1游戏测试:鹰击长空 /鹰击长空图形特点/: 游戏3D API:DX10.1 《鹰击长空》由Ubisoft 旗下的Bucharest Studio工作室所研发制作而成,以汤姆.克兰西最擅长的近现代国际冲突为背景,加上现代化的军事武器,和五角大厦不愿证实的开发中的先进武器,交织出最激烈的高科技攻防战。而《鹰击长空》也脱离前面几项作品的框架,将战争从地面拉拔到空中,享受广大无界限的战斗空间。 /鹰击长空测试设置/: 测试了设置为全部最高画质,其中ATI显卡在测试时开启DX10.1效果,NVIDIA显卡则仅开启DX10效果。 /鹰击长空测试方法/: 测试选择游戏自带的BenchMark测试场景,运行多次取平均值。 DX11游戏测试:尘埃2 /尘埃2图形特点/: 游戏3D API:DX11 尘埃2 PC版将是全球首款支持DirectX 11的赛车游戏,其使用的EGO引擎将整体部署DirectX11技术,支持图形多线程、硬件Tessellation以及SM5.0等新特性,这也成为这款游戏受到多方关注的焦点。 在引入DX11后,尘埃2的画面有了明显的提升,包括水面的镜面反射和折射,观众人群描绘,环境光遮蔽以及阴影效果等,尤其对于EGO引擎来说,动态模糊和景深效果的表现将迎来彻底的革新。 /尘埃2测试设置/: 测试了设置为最高画质,在最高画质中开启DX11效果。 /尘埃2测试方法/: 采用游戏自带BenchMark软件进行测试,运行多次取平均值。 /查询尘埃2配置要求、性能指数/ DX11游戏测试:潜行者 /普利皮亚的召唤特点/:
著名游戏制作公司GSC Game World的《S.T.A.L.K.E.R.》第二部资料片《Call of Pripyat》(普利皮亚的召唤)将在今年11月发售。与前传性质的首部资料片《晴空》不同,新游戏的背景设定在原作《切尔诺贝利阴影》之后不久。乌克兰政府发现了通往Zone核心区的道路,于是计划了代号“Fairway”的大规模军事行动,首先派出一批侦察直升机去绘制异常磁场位置的详细分布图,然后再据此派出地面部队主力。 /普利皮亚的召唤设置/: 测试设置为最高画质。 /普利皮亚的召唤方法/: 游戏自带BenchMark测试程序,运行多次取平均值。 DX11游戏测试:叛逆联队2 游戏3D API:DX11 由EA DICE开发制作的DX11动作射击大作——《战地:叛逆连队2》(Battlefield: Bad Company 2)已于3月2号正式与广大玩家朋友见面。该作是EA DICE开发的第9款“战地”系列作品,也是《战地:叛逆连队》的直接续作。采用现代军事背景又支持DX11显示特效,占据两者的《战地:叛逆连队2》想不火都难,而且有了前作的支持,一大批老玩家也会对其充满期待。 /叛逆联队2测试设置/: 测试设置为最高画质。 /叛逆联队2测试方法/: 采用游戏过场动画的方法进行测试,测试中采用同一时间段,借助Fraps进行多次截取,最后取平均值。 DX11游戏测试:巨石人 游戏3D API:DX11 游戏引擎开发商BitSquid和游戏开发商Fatshark,为PC游戏爱好者准备了一款用于检验GPU DX11性能的技术演示程序,名为“StoneGiant”(石巨人)。该DEMO内建对DX11及曲面细分等特性的支持,而用于商业版本的BitSquid Tech游戏引擎将支持PC、PS3和Xbox 360平台。 /巨石人设置/: 测试设置为最高画质。 /巨石人方法/: 游戏自带BenchMark测试程序,运行多次取平均值。 DX11游戏测试:地铁2033 /地铁2033特点/:
《地铁2033》是根据俄罗斯作家迪米特·格鲁科夫斯基(Dmitriy Glukhovskiy)的同名小说改编的,游戏版本将以小说为基础架构,游戏中的大多数情节和背景都与小说无异。游戏舞台背景设置在近未来的2033年莫斯科,此时的人类世界面临着大面积的核泄漏事故所带来的核污染危机,整个世界都笼罩在核污染的阴霾中。 /地铁2033设置/: 测试设置为最高画质。 /地铁2033方法/: 采用游戏过场动画的方法进行测试,测试中采用同一时间段,借助Fraps进行多次截取,最后取平均值。 PhysX游戏测试:镜之边缘 /镜之边缘图形特点/: 游戏3D API:DirectX 9.0 跑酷运动作为最近几年刚刚崛起的一个新兴极限运动,得到了不少年轻朋友的喜爱。不过作为极限运动中的一种,自然少不了非常高的危险性,这也让不少爱好跑酷的人们不得不放弃这项运动。而作为以跑酷为主题的游戏——《镜之边缘》就可以让用户足不出户就可以享受这种前卫的极限运动了。这就是EA公司不久前发布的一款全新概念的游戏,游戏设计为第一人称主视角的动作冒险游戏。 /镜之边缘测试设置/: 图形所有设置选择最高,反锯齿和各向异性过滤全部采用游戏打开。 /镜之边缘测试方法/: 测试场景选择了一段相对比较平直,并且负载较高场景,并且拥有PhysX物理效果。测试方法方面选择了用Fraps软件进行辅助测试,多次测试取平均值。 /查询 镜之边缘 配置要求、性能指数/ PhysX游戏测试:蝙蝠侠 /蝙蝠侠:阿卡姆疯人院特点/: 游戏3D API:DX10 某天,以小丑(Joker)为首的病人们声称觉得“无聊”,所以劫持了医护人员,要求蝙蝠侠前去陪他们“ 游戏”。这场疯狂的迷藏中,占尽优势的是反派们,蝙蝠侠不仅要提防杀气腾腾的各个患者,同时他自己的精神状态也处于失常的边缘。 /蝙蝠侠:阿卡姆疯人院设置/: 测试设置为最高画质,其中开启DX10效果。 /蝙蝠侠:阿卡姆疯人院测试方法/: 第三方BenchMark测试场景,运行多次取平均值。 双卡比拼HD5970展望未来 ◆ 测试平台
◆ 测试产品 尽管GTX480已经发布,但显然这还没有结束,因为ATI还有双核心设计的HD5970占据着更高的市场地位。相信大家早就看到消息,NVIDIA后续也会推出双核心设计的产品去对抗HD5970。经过一番考虑,我们这次采取GTX480/GTX470通过SLI的方式,来模拟推断一下后续双核心设计GF100产品的性能水平大致如何,供大家参考。 基准测试:3DMark Vantage
对于3DMark Vantage我们肯定不能错过。3DMark Vantage基于全新的DirectX 10技术开发,与3DMark06相比,完全采用了全新的测试场景,其中两个GPU测试场景,两个CPU测试场景。在GPU测试场景当中,使用了最新的DirectX 10特效,对于不能够支持DirectX 10的产品来说,3DMark Vantage直接为他们选判了死刑,因此3DMark Vantage是一款更加之的测试的DX10基准测试软件。 /3DMark Vantage测试设置/: 测试软件:3Dmark Vantage Pro 1.00 基准测试:天堂2.0(DX11) /天堂2.0特点/:
/天堂2.0设置/: 测试设置为最高画质。 /天堂2.0方法/: 游戏自带BenchMark测试程序,运行多次取平均值。 DX10游戏测试:孤岛危机 /孤岛危机:弹头图形特点/: 游戏3D API:DX10 弹头并不是讲述上一部作品后续的事情,而是与孤岛危机剧情同步进展、发生在小岛另外一端的故事。游戏当中,玩家同样将会控制一名穿着纳米作战服的战士,不过这个战士名字叫Psycho Sykes,并且这名军士是一位来自英国的军人。 /孤岛危机:弹头测试设置/: 测试了设置为最高、高两种画质,其中最高画质时开启了DX10效果。 /孤岛危机:弹头测试方法/: 第三方BenchMark测试场景,运行多次取平均值。 /查询 孤岛危机弹头 配置要求、性能指数/ 令人有些意外的是,HD5970在《孤岛危机》超高画质设定下,成绩下降很多,看来驱动仍有需要完善的地方。 DX11游戏测试:叛逆联队2 /叛逆联队2特点/: 游戏3D API:DX11 /叛逆联队2测试设置/: 测试设置为最高画质。 /叛逆联队2测试方法/: 采用游戏过场动画的方法进行测试,测试中采用同一时间段,借助Fraps进行多次截取,最后取平均值。 DX11游戏测试:地铁2033 游戏3D API:DX11 /地铁2033设置/: 测试设置为最高画质。 /地铁2033方法/: 采用游戏过场动画的方法进行测试,测试中采用同一时间段,借助Fraps进行多次截取,最后取平均值。 7回顶部 DX11技术DEMO测试 ◆ 测试平台 GeForce GTX 480 Windows 7 32bit Intel(R) X58/ICH10R 芯片组驱动程式 V9.1.0.1007 NVIDIA ForceWare 197.17 Beta版 ◆ 测试产品
◆ Realistic_water_terrain超现实水面、地形技术Demo(Tessellation) 首先是超现实水面、地形的技术Demo,这个技术Demo的性能要求较高,水面和地形的大量数据需要计算。GTX480表现最佳,而GTX470也能超越HD5870,HD5850的成绩垫底。 DEMO测试:超现实头发效果 ◆ Realistic_Character_Hair技术Demo测试(Tessellation) 超现实头发的渲染量明显减小,几款产品也能得以发挥出实际的能力。GTX480超越HD5870几乎一倍,而GTX470也能超越HD5870大约50%。 DEMO测试:微软DX11 Demo ◆ Catmull-Clark Subdivision技术Demo(Tessellation) 这个技术Demo来源于微软DirectX11 SDK工具包中,GTX480和GTX470的成绩非常出色,超越HD5870和HD5850几十倍,速度优势非常明显。 DEMO测试:超音速轨道车 ◆ SupersonicSled技术Demo(PhysX) 这个技术Demo只能运行在GTX400系列显示卡上,因此我们无法比较ATI的产品或者NVIDIA老款产品,仅供大家参考。测试分辨率为2560x1600,GTX480和GTX470之间的差距大约在20%左右。 其他测试:功耗、温度 ◆ 功耗测试 测试工具:功耗测试仪 测试工具我们选择了专用的功耗测试仪进行测试,该测试仪可以测试一段时间内整套系统的平均功耗。 测试软件:FurMark 功耗测试方面我们选择了FurMark测试软件进行测试,这款软件的主要功能是让显卡进入满负载状态。 测试方法: 待机测试为使用功耗测试仪测试待机状态下一分钟内的整套系统平均功耗,满载状态则是开启FurMark后的一分钟内整套系统平均功耗。 ◆ 温度测试 测试软件:FurMark 由于目前最新版的RivaTuner软件还不能够正确识别几款最新显卡,因此温度测试方面我们选择了FurMark负责让显卡进入满负载状态。温度监控选择了微星的Afterburner软件来监测显卡的待机以及满载温度。测试成绩记录三分钟之后显卡的最高温度值(满载温度)以及关闭FurMark软件之后三分钟的温度值(待机温度)。 显卡功耗效能测试 虽然GTX480/470采用了最新的40nm工艺,不过由于融聚了多达30亿个晶体管,因此其功耗还是比预想中的高一些。从另一个角度看,GTX480/470在DX11当中性能表现优秀,倒是与其功耗成正比。 显卡温度效能测试 公版的GeForce GTX480/470在测试当中为了保持更加静音的效果,因此温度方面略有损失。两款新品的满载温度均达到了90°以上,不过此时风扇转速并未得到较大提升,如果通过其他软件调整风扇转速,相信能够在温度与噪音之间得到一个更好的平衡点。 8回顶部 PhysX效能对比:镜之边缘 游戏3D API:DirectX 9.0 /镜之边缘测试设置/: 图形所有设置选择最高,反锯齿和各向异性过滤全部采用游戏打开。 /镜之边缘测试方法/: 测试场景选择了一段相对比较平直,并且负载较高场景,并且拥有PhysX物理效果。测试方法方面选择了用Fraps软件进行辅助测试,多次测试取平均值。 /查询 镜之边缘 配置要求、性能指数/ PhysX效能对比:蝙蝠侠 游戏3D API:DX10 /蝙蝠侠:阿卡姆疯人院设置/: 测试设置为最高画质,其中开启DX10效果。 /蝙蝠侠:阿卡姆疯人院测试方法/: 第三方BenchMark测试场景,运行多次取平均值。 CUDA测试:Folding@Home FAH可以说是现在适用范围最广泛的分布式计算项目,不仅有PC,MAC和PS3的计算程序,在很早也加入了对NVIDIA和AMD的GPU支持,而且支持NVIDIA显卡的客户端发布后仅仅一个月不到,GPU的运算量就占了FAH总运算量的1/3多。 借助CUDA运算和GPU的高效并行运算能力,NVIDIA产品线系列可以实现很强的计算性能,而GTX480的发布将这个性能推动到了更高的水品。下面我们就来看看GTX480、GTX470和GTX280之间的对比,因为目前NVIDIA GTX400系列是通过专用的代码程序进行测试,所以无法直接对比ATI的产品。 从测试成绩来看,GTX480实现了比上一代显卡性能的大幅度提升,超越将近60~70%,即便GTX470也有将近50%的成绩超越,从科学计算的角度来讲,新一代的GTX400系列显示卡实现了性能的大幅度跨越。 6年6代NV高端显卡穿越对比! 从显卡进入PCI-E时代开始计算,NVIDIA经历了GeForce 5、GeForce 6、GeForce 7、GeForce 8、GeForce 9、GeForce GT200以及此次发布的GeForce GTX 400,共计七代产品的变迁,其中包括了NVIDIA的鼎盛时期以及低落时期。 在GeForce GTX 480评测文章中,我们还为大家带来了“穿越篇”——NVIDIA的历代高端产品纵向对比。本章当中,我们将多年来收藏的GeForce PCX 5900、GeForce 6800 Ultra、GeForce 7900 GTX、GeForce 8800 Ultra、GeForce GTX 280以及今天评测的GeForce GTX 480会聚在一起。其实还有GeForce 9800GTX,但考虑它与GeForce 8800系列相比并非换代关系,只属于小改款,最终决定不收录在本章中。 从上面的对比图片当中,我们可以看到从GeForce PCX 5900开始,到今天发布的GeForce GTX 480显卡,体积在不断膨胀,并且显卡的供电接口也一变再变。 我们接着会对这6款NVIDIA历代高端产品,进行简短的回顾以及纵向性能对比测试。 回顾:GeForce PCX 5900 原为AGP接口的GeForce FX 5900通过桥接芯片,让GeForce PCX 5900成为了NVIDIA首款支持PCI-E接口的顶级产品。不过由于GeForce FX 5系列产品设计上的原因,注定GeForce PCX 5900没能够成为市场当中的主导者。 当年代表游戏:虚幻2、虚幻竞技场2003、细胞分裂、极品飞车6等。 回顾:GeForce 6800 Ultra 经历了GeForce 5系列产品的挫折后,NVIDIA将希望寄托在了GeForce 6系列中,而GeForce 6800 Ultra则是GeForce 6系列的领头军,并且也为NVIDIA的翻身仗立下了汗马功劳。 当年代表游戏:孤岛惊魂、使命召唤2、半条命2等 回顾:GeForce 7900 GTX 在GeForce 6系列产品成功扭转局势之后,NVIDIA的GeForce 7系列产品再次将领先的优势扩大。其中无论是主流级还是高端级产品,均获得了非常不错的市场认可。 当年代表游戏:古墓丽影6、科林麦克雷2005、雷神之锤4、战地2、极度恐慌等 回顾:GeForce 8800 Ultra G80又为NVIDIA开创了DX10时代的先河,并且这一代产品也使得NVIDIA与竞争对手产品之间的差距拉到了最大。当GeForce 8800 Ultra发布后,竞争对手暂时没有还手的余地。 当年代表游戏:生化奇兵、孤岛危机、冲突世界等 回顾:GeForce GTX 280 经过了GeForce 9系列的更名战术之后,NVIDIA的GeForce GT200系列产品为我们带来了不少新意。另外,在单核心处理器的性能方面也依然保持了领先的态势。 当年代表游戏:分裂细胞:明日潘多拉、使命召唤5、侠盗车手4、孢子、死亡空间等。 今天:GeForce GTX 480 最新一代的DX11显卡顶级产品,本文当中已经有太多的介绍了…… 当年代表游戏:尘埃2、潜行者:普利皮亚的召唤、地铁2033、叛逆联队2等 纵向对比:3DMark 06 因为涉及多款DirectX 9显示卡产品,所以我们挑选了3DMark 06这款软件适应各个产品的需求,可以看出,成绩成阶梯状,从GeForce 8800Ultra开始,成绩有了一次较高的飞跃。 纵向对比:孤岛危机 游戏3D API:DX10 /孤岛危机:弹头测试设置/: 测试了设置为最高、高两种画质,其中最高画质时开启了DX10效果。 /孤岛危机:弹头测试方法/: 第三方BenchMark测试场景,运行多次取平均值。 /查询 孤岛危机弹头 配置要求、性能指数/ 孤岛危机的引擎非常有特色和代表性,但是为了照顾老卡产品,我们将画质设定在中等水平。可以看出,8800Ultra的成绩相比上一代7900GTX有了非常明显的提升,足可见在架构上的革新。新一代的显卡性能越来越好,但是对于孤岛危机这样的游戏,高画质其实对当今的产品更有说服力。不过我们可以看看其它游戏的表现。 游戏3D API:DX9.0c /星际争霸2测试设置/: 测试设置为最高画质。 /星际争霸2测试方法/: 通过录制Demo,反复测试取平均值。 星际争霸为了适应老显卡,调节为了中等画质,仍可看出8800Ultra在架构和性能上的飞跃,也能看到GTX480在架构上的革新以及对GTX280性能的大幅度上升。 纵向对比:鹰击长空 游戏3D API:DX10.1 /鹰击长空测试设置/: 测试了设置为全部最高画质,其中ATI显卡在测试时开启DX10.1效果,NVIDIA显卡则仅开启DX10效果。 /鹰击长空测试方法/: 测试选择游戏自带的BenchMark测试场景,运行多次取平均值。 鹰击长空的成绩类似,每一代的顶级高端卡都让性能几乎有一倍的提升,GTX280的提升相对较小,而8800Ultra的提升较大,这与显卡架构变化的程度也有关系。 9回顶部 让你玩爽DX11游戏的新选择 随着本文的结束,我们在第一页提到的种种问题也逐一解开。作为NVIDIA产品的DX11领衔军团,GeForce GTX 480/470两款产品确实带来了不错的表现。从GF100的架构改进,到两款产品的性能表现,均从一定程度上体现出了DX11显卡的真正实力。 架构方面的巨大改进,成为了此次GTX400系列最让人关注的焦点。对于DX11来说,GTX400的Tessellation优化设计非常巨大,在性能方面也得到了巨大提升。这一点在DX11测试当中(尤其是Tessellation应用较多的场景)尤为明显,支持Tessellation的DX11游戏及基准测试当中,GTX400系列产品的性能确实优于竞争对手。 除了在DX11方面的改进以外,GTX480/470还在CUDA、3D VISION、PhysX、光线追踪等众多领域有了新的突破,这些突破均会在今后的游戏当中得以发挥,真实的流水效果、逼真的三屏立体显示、足以与真实场景媲美的光线追踪效果等等将会逐渐在今后的游戏当中展现。 对于即将到来的DX11游戏大潮,目前看来似乎NVIDIA在GF100的设计上更具前瞻性,优秀的架构设计将会在未来的DX11游戏中发挥更大的优势。当然,ATI不会坐视不管,它肯定也在紧锣密鼓的准备新产品来重获竞争优势。其实这正是我们以及大家希望看到的,优秀的产品不算涌现总是消费者之福。 未来GTX400产品架构预测 此次NVIDIA发布两款高端产品GeForce GTX 480/470之后,并没有为我们透露任何有关GT400系列的其他产品细节。不过当大家了解了GF100的产品架构之后,结合以往NVIDIA产品的一贯特色,我们可以从中推断出一些NVIDIA在未来产品上的划分。接下来的内容,我们就将为各位读者推断一下NVIDIA在未来产品线上究竟会如何划分以及未来产品的规格、架构。 注:本页内容均为推测性质,并非确凿事实,对推断论无兴趣的读者可忽略本页内容。 ◆ 中端产品线 未来NVIDIA的中端产品线上,NVIDIA有可能直接屏蔽掉其中一组GPC单元或6组左右的SM阵列以及两组显存位宽接口。也就是说这类产品预计会有484或更少的核心数量,显存位宽为256bit。以组建中高端产品线(如GTX460系列)。而中端主力产品则有可能更大范围的缩减GPC单元以及显存位宽接口,大约为256个核心数量并且拥有192bit显存位宽(如GTS450系列)。 预计NVIDIA的中端系列产品将会在4月底至5月初发布,并且根据我们得到的消息,GTS450这款产品将确认出现在未来的NVIDIA中端产品线上,且发布时间不会晚于6月。其中GTX460的售价预计为1800元左右,竞争对手为HD5830;GTS450售价预计为1200元左右,竞争对手将在HD5770之上(或者说这是ATI的市场空当,当然也不排除ATI将HD5830降价迎战GTS450)。 ◆ 主流产品线 主流产品线方面,NVIDIA有可能至少把GF100核心当中的两组GPC削减掉(甚至有可能削减掉三组GPC,这种削减方法概率更高一些),因此核心数量将不会超过256个(我们预计128个核心数量更加可能)。显存位宽方面预计将会削减掉3~4组控制器,也就是说显存位宽为128bit或192bit(128bit可能性更高)。 主流产品将会通过不同频率、删减SM阵列进行区分,并且是否使用GDDR5显存也将是划分价格区间的一种方式。预计主流产品线将会以GT440产品为主,根据不同规格划分价格区间将会存在较大弹性,初期上市价格预计在699~999元左右。竞争对手将会围绕在HD5700以及HD5600系列之间。 ◆ 入门产品线 入门级产品线将会使GF100架构削减最为明显的一系列产品。预计入门级产品仅会保留1~3组SM阵列,显存位宽方面也仅有1~2组控制器。换而言之,入门级产品的流处理器数量预计为32~96个,最低端入门级产品将会拥有64bit显存位宽,主打性能的入门级产品将会拥有128bit显存位宽。 入门级产品将有可能拉高产品的运行频率,但是通过流处理器数量以及显存位宽进行区分。产品将会包括G420以及410为主,竞争对手产品将会锁定在ATI的HD5500以及HD5400两大系列。 在ATI于09年9月发布Radeon HD 5870时,我们一度认为,ATI会凭借DX11显卡抢先发布的先机,一反DX10时代的颓势局面。不过从此次NVIDIA的GTX400系列产品的性能来看,恐怕ATI不会走的太过顺利。好在目前ATI已经将Radeon HD 5000全线产品扑向市场,这对于NVIDIA来说还是存在比较大的市场压力。而NVIDIA能否快速的将GTX400系列产品的中低端系列推向市场,也成为了NVIDIA是否会在DX11这一代产品成功上演大逆转的一个重要因素…… NVIDIA官方装机配置推荐 在看过前面的介绍之后,相信已经有不少玩家对文章中介绍过的GTX480有了浓厚的兴趣,为方便玩家选购适用于自己的DX11游戏平台,NVIDIA官方根据全国各地的硬件市场情况给出了如下装机推荐单,有需要的玩家不妨参考一下。
|
跨入GF100新时代!GeFroce GTX480评测
2010-04-07 13:53 出处:PConline原创 作者:佚名 责任编辑:zhengwanglun
浙江行情
浙江活动