|
NV40 正名为 GeForce 6800/Ultra
NV40 是 nVIDIA 继 NV38 ( GeForce FX 5950 Ultra )之后的最新 GPU 旗舰机种,在发表之后, NV40 已经正名为 GeForce 6800/Ultra 图形处理器,型号中已经拿掉了FX字样。 NV40的三个版本分别是 GeForce 6800 、 GeForce 6800 GT 及 GeForce 6800 Ultra , GeForce 6800 的 GPU 频率 335MHz 、显存频率为 700MHz , GT 版为 350MHz/1GHz(GDDR3) , Ultra 版为 400MHz/1.1GHz(GDDR3) 。

NV40 采用 IBM 0.13 微米制程工艺制造,芯片内含的晶体管数量超过 2.2 亿个,跟 GeForce FX 5950 Ultra ( NV38 )比较起来,几乎多了一倍! NV40 GPU 属于 256-bit 架构设计,内含 16 条像素着色管线( NV38 为 8 条),显存接口宽度为 256-bit ,搭配 GDDR3 高速显存,显存频宽高达 35.2GB/s 。 NV40 的材质填充率高达 6.4 billion texel/s ( NV38 为 3.8 billion ),三角形产生率高达 600 Million triangle/s ( NV38 为 356Million ),光看这些数据上的差异,就可以约略估计 NV40 狂暴式的性能大跃进!
NV40 支持新一代的 CineFX 3.0 着色引擎、 Pixel/Vertex Shader Model 3.0 着色器、 IntelliSample 3.0 抗锯齿技术、 UltraShadow II 阴影算法,并内建视频处理器( Video Processor )、电视信号编码器( TV Encoder )及两组 400MHz 的 RAMDAC 。
各家的 GeForce 6800/GT/Ultra 显卡现在已经陆陆续续铺货上市,总线接口目前采用的仍然是AGP 8X 。支持PCI Express 的新一代主板Intel i9X5已经发布,待PCIe全面普及, NV40 也能够像 GeForce PCX 系列一样,利用 HSI ( High-Speed Interconnect )桥接芯片来转换成 PCI Express 接口, NV40 芯片本身并不需要修改。 HSI 桥接方式其实是双向的,将来原生型 PCI Express 的 GPU 也能够利用 HSI 再转换回 AGP 8X 接口。如果将来能证实 HSI 桥接方式并不会对性能产生负面影响的话,那么其实 nVIDIA 的做法在目前 AGP 8X 转换到 PCI Express 的过渡时期反而比较有弹性。

CineFX 3.0 着色引擎
从 nFiniteFX 、 nFiniteFX II 、 CineFX 一直到 CineFX 2.0 , nVIDIA 随着新世代 GPU 的推陈出新,着色引擎也跟着不断演化。 NV40 导入全新 CineFX 3.0 引擎,支持了 DirectX 9.0 的 Vertex Shader Model 3.0 、 Pixel Shader Model 3.0 及 OpenGL 1.5 API 。 CineFX 3.0 在 Pixel/Vertex Shader (像素 / 顶点着色器)的程序撰写上几乎没有长度限制,加上改良的高度动态流程控制,让程序研发人员拥有前所未见的自由度,这也是迈向完全可程序化 GPU 的一个重要里程碑。
CineFX 3.0 引擎导入顶点频率流分割器( Vertex Frequency Stream Divider )的概念,让程序研发人员能指定多组频率或偏移量,来读取不同种类的顶点信息。让一组效果可以迅速地套用到多个角色或物体上,增加差异性,以避免每个模型看起来一模一样。下图是一个范例,例如在战场上的一群士兵或坦克行进时的动作完全一致,就可将每个角色的动作参数套用到每个模型上,让每个个体产生独特的动作。研发人员可以透过批次处里,为场景中的所有模型设定动作参数,达到惊人的复杂视觉效果。
顶点频率流分割器( Vertex Frequency Stream Divider )的应用范例
NV40支援全新Shader Model 3.0
|
Shader长度
|
96
|
65535+
|
允许采用更复杂的阴影、光线和程序
|
|
动态分支
|
不支持
|
支持
|
通过跳过无关像素上的复杂着色以提高性能
|
|
Shader抗锯齿
|
不支持
|
内置派生指令
|
开发人员能够计算屏幕空间以调整着色频率或者进行多重采样处理,以降低画面失真
|
|
背面寄存器
|
不支持
|
支持
|
允许在一次处理工序中处理双面材质的光源
|
|
内插值色彩格式
|
最低8-bit整数
|
最低32-bit浮点
|
更高的颜色范围和色彩精度,允许采用顶点级别的高动态范围光源
|
|
多重渲染目标
|
可选
|
4个
|
允许高级光源算法,以节省过滤和顶点操作。能够以最低成本实现更多的光源处理
|
|
雾和镜面效果
|
固定8-bit功能
|
可自定义的fp16-fp32 shader程序
|
Shader Model 3.0让开发人员能够完全、精确的控制雾和镜面反射效果。在Shader
Model 2.0中,这些效果都是固定的。
|
|
材质坐标数量
|
8
|
10
|
更多的per-pixel输入允许更逼真的渲染,尤其适合渲染皮肤。
|
下面是Vertex Shader Model 2.0到Vertex Shader Model 3.0所作出的改变:
|
Shader长度
|
256指令
|
65535指令
|
更多的指令允许更为细致的角色光源和动画处理
|
|
动态分支
|
不支持
|
支持
|
通过跳过无关像素上的复杂着色以提高性能
|
|
顶点材质
|
不支持
|
对多达4个的材质进行查找
|
允许置换贴图和粒子特效
|
|
支持实例
|
不支持
|
必须
|
允许使用一条指令绘制各种物体
|
超纯量16管线
为了能够在同一个频率周期平行处理多个像素, GPU 也引进了所谓的管线( Pipeline )架构。以 nVIDIA 的产品世代来看,从 GeForce4 MX (双管线)、 GeForce4 Ti ( 4 管线)、 GeForce FX 5200/5500/5600/5700 ( 4 管线)、 GeForce FX 5800/5900/5950 ( 8 管线)的一路演进,像素处理管线的数量几乎就象征着该图形芯片的性能等级。像素管线的多寡不但与性能表现密切相关,也和芯片的实体复杂度成正比,换句话说,也就是与芯片的设计/生产成本息息相关。
NV40 终于更上一层楼,将像素管线一举倍增到 16 条,并且导入超纯量( Superscalar )的设计。传统的非纯量着色器架构只提供一组着色器单元,每个周期最多只能执行四组运算。 NV40 的超纯量架构则内含第二组着色器单元,让每个周期的运算量增加一倍。

传统的非纯量着色器架构只提供一组着色器单元,每个周期最多只能执行四组运算
超纯量架构则内含两组着色器单元,让每个周期的运算量增加一倍
高精准度动态范围 (High Precision Dynamic Range, HPDR)技术
NV40 架构中的新型高精准度动态范围 (High Precision Dynamic Range, HPDR) 技术是采用由 Industrial Light & Magic 制定的 OpenEXR 标准为基础,主要目的用来进一步改善静态与动态视频的质量,让图形系统能朝向更近似相片般的着色质量迈进。 HPDR 在着色、图层混合、以及过滤时均能提供更高的数据精准度,进而改善视频质量。
图中是高精准度动态范围的范例。白光非常明亮,而阴影部位的大理石墙板纹路则相当细腻。
IntelliSample 3.0 抗锯齿技术
从 Accuview 、 Intellisample 到 IntelliSample HCT , nVIDIA 在全景抗锯齿( FSAA )技术上的精进也不断地精益求精。 NV40 则再度引进了全新的 IntelliSample 3.0 抗锯齿技术。 IntelliSample 3.0 抗锯齿技术的核心是一套旋转网格线( Rotated-grid )的抗锯齿采样算法。以往,抗锯齿演算会在每个像素撷取四组采样,这四个子像素是以 2 乘 2 的网格线模式对每个像素进行采样。旋转网格线( Rotated-grid )则将四个子像素的网格线稍加旋转,形成一组 4 乘 4 的钻石型采样网格线。如此一来,能够让子像素在水平与垂直方向的涵盖率加倍,进而为多边形的边缘带来更高的色彩精准度,也就是成效更好的抗锯齿效果。
底下左图是传统的抗锯齿采样图示,子像素在垂直与水平方向分别只涵盖两个数值;旋转网格线之后(右图),子像素在垂直与水平方向都能各自涵盖四个数值,证实了旋转网格线算法的理论基础无误。

旋转网格线之后(右图),子像素的涵盖率加倍
UltraShadow II 阴影算法
还记得我们在介绍 GeForce FX 5900 ( NV35 )、 GeForce FX 5700 ( NV36 )、 GeForce FX 5950 ( NV38 )的时候都曾经讨论过 UltraShadow 阴影算法。精准的阴影效果对于营造逼真的 3D 场景具有决定性的影响。然而场景中多组光源以及无数个体之间的复杂互动,往往需要耗费极大的运算资源来分析阴影的成像变化。
UltraShadow 主要目的在于提高阴影成像的运算性能。实作上是利用排除不必要的区域来加快阴影运算的速度。首先在场景中定义出封闭边界的区域(称为” Depth bounds ”),并藉以限制物体在计算光源效果时的范围。也就是说, UltraShadow 将阴影运算限制在最受光源影响的范围内,并避免运算资源浪费在不可见的区域,藉此加速阴影产生的流程。
NV40 以硬件实作的方式来强化 UltraShadow 技术,据官方说法,新一代 UltraShadow II 产生阴影的速度是前一代技术的 4 倍,如果在程序撰写时加入一些硬件组件的呼叫函数,运算性能还可以进一步提升。事实上,场景中的光源与阴影愈复杂, UltraShadow II 提升速度的效益就愈显著。
定义出Depth bounds子区域来限制阴影的计算范围
底下是一个 UltraShadow II 的实际应用范例,截图的画面是 DOOM III 的游戏场景。
DOOM III 的游戏场景

图中的线条代表计算光源与阴影的影像轮廓

应用 UltraShadow II 技术之后,需要计算的轮廓线条变得比较少
NV40规格简表
NV40 显卡的各版本除了核心 / 显存频率不同以外,也依据像素管线数量的不同而划分等级,分别是 GeForce 6800 Ultra ( 16 管线)、 GeForce 6800 GT ( 12 管线)、 GeForce 6800 (8管线)。
| |
GeForece 6800 Ultra |
GeForece 6800 GT |
GeForece 6800 |
GeForce FX 5950 Ultra |
| 核心代号 |
NV40 |
NV40 |
NV40 |
NV38 |
| 芯片架构 |
256bit |
256bit |
256bit |
256bit |
| 芯片制程 |
0.13微米 |
0.13微米 |
0.13微米 |
0.13微米 |
| 核心频率 |
400MHz |
350MHz |
335MHz |
475MHz |
| 显存频率(DDR) |
1.1GHz |
1GHz |
700MHz |
950MHz |
| 显存类型 |
GDDR3 |
GDDR3 |
DDR |
DDR |
| 默认显存容量 |
256MB |
256MB |
128MB |
256MB |
| 显存带宽 |
256bit |
256bit |
256bit |
256bit |
| 象素管线(Pixel Pipelines) |
16 |
16 |
12 |
8 |
| 着色引擎 |
CineFX 3.0 |
CineFX 3.0 |
CineFX 3.0 |
CineFX 2.0 |
| Vertex Shader版本 |
3.0 |
3.0 |
3.0 |
2.0+ |
| Pixel Shader版本 |
3.0 |
3.0 |
3.0 |
2.0+ |
| API支持:DirectX |
DirectX 9.0c |
DirectX 9.0c |
DirectX 9.0c |
DirectX 9.0 |
| API支持:OpenGL |
OpenGL 1.5 |
OpenGL 1.5 |
OpenGL 1.5 |
OpenGL 1.5 |
| 芯片内建:RAMDAC |
2*400MHz |
2*400MHz |
2*400MHz |
2*400MHz |
| 芯片内建:TV Encode |
Yes(1024*768) |
Yes(1024*768) |
Yes(1024*768) |
Yes(1024*768) |
| FSAA抗锯齿技术 |
IntelliSample 3.0 |
IntelliSample 3.0 |
IntelliSample 3.0 |
IntelliSample HCT |
| FSAA模式 |
2x、2xQ、4x、8x |
2x、2xQ、4x、8x |
2x、2xQ、4x、8x |
2x、2xQ、4x、6xS、8x |
| 各项异性过滤(Anisotropic Filtering) |
2x、4x、8x、16x |
2x、4x、8x、16x |
2x、4x、8x、16x |
2x、4x、8x |
| 阴影算法 |
UltraShadow II |
UltraShadow II |
UltraShadow II |
UltraShadow |
| 双屏幕技术 |
nView |
nView |
nView |
nView |
NV40 vs. R420 性能大对决
接下来要进入我们的重头戏了,咱们将针对全系列 NV40 及 R420 显卡来一次性能评比,参赛者包括: GeForce 6800 Ultra 、 GeForce 6800 GT 、 GeForce 6800 、 Radeon X800 XT 、 Radeon X800 Pro 等等这次我们文章中的主角,另外也把双方阵营的上一代旗舰 GeForce FX 5950 Ultra ( NV38 )及 Radeon 9800 XT ( R360 )加入我们的评比,当作对照之用。
测试平台
| 处理器 |
Pentium4 3.4GHz w/Hyper-Threading |
| 主板 |
技嘉GA-8IPE1000 Pro2(Intel 865PE/ICH5) |
| 内存 |
TwinMOS DDR400,512MB×2@双通道DDR400 |
| 硬盘 |
Hatchi 7K250 80GB,ATA/100 ,7200RPM |
| 操作系统 |
Windows XP Professional SP1 w/DirectX 9.0c |
| 驱动程序 |
nVidia ForceWare v61.11,ATi Catalyst v4.6 |
测试结果
| |
GeForce 6800 Ultra |
GeForce 6800 GT |
GeForce 6800 |
GeForce FX 5950 Ultra |
| 3DMark03,build3.4.0 |
11819 |
10889 |
7575 |
6498 |
| 3DMark03,build3.4.0,4xAA+8xAF |
6964 |
6385 |
4101 |
3782 |
| 3DMark2001 SE,build3.3.0 |
19330 |
19106 |
17476 |
16786 |
| 3DMark2001 SE,build3.3.0,4xAA+8xAF |
16698 |
16222 |
13842 |
12984 |
| AquaMark3(fps) |
65.48 |
62.79 |
53.27 |
51.45 |
| QuakeIII Arena-demo001(fps) |
325.8 |
324 |
323.5 |
333.9 |
| UT2003 -- Flyby |
232.1 |
232.1 |
228.4 |
225.3 |
| FIRESTARTER (fps) |
422.95 |
415.89 |
351.19 |
312.92 |
| |
Radeon X800 XT |
Radeon X800 Pro |
Radeon 9800 XT |
| 3DMark03,build3.4.0 |
11840 |
9657 |
6508 |
| 3DMark03,build3.4.0,4xAA+8xAF |
6979 |
5573 |
3342 |
| 3DMark2001 SE,build3.3.0 |
20623 |
19537 |
18490 |
| 3DMark2001 SE,build3.3.0,4xAA+8xAF |
17769 |
16809 |
13285 |
| AquaMark3(fps) |
57.61 |
54.1 |
46.47 |
| QuakeIII Arena-demo001(fps) |
320 |
319.6 |
315.1 |
| UT2003 -- Flyby |
235.2 |
234.1 |
233.2 |
| FIRESTARTER (fps) |
391.31 |
365.32 |
316.27 |
分析测试的结果,我们把焦点集中在 DirectX 9.0 的性能表现上。先看 nVIDIA 的部分, GeForce 6800 Ultra 约领先 GeForce 6800 GT 有 10% 左右。
GeForce 6800 GT 则领先 GeForce 6800 约 50% 的性能。 GeForce 6800 则领先上一代旗舰 GeForce FX 5950 Ultra 将近 15% 。也就是说, GeForce 6800 Ultra 的 DX9 性能大约是 GeForce FX 5950 Ultra 的两倍左右,提升的幅度真是空前绝后!这些性能差距除了彼此的核心 / 显存频率不同之外,也由于 GPU 的像素着色管线数量不同所致。
再看到 ATi 的部份, Radeon X800 XT 约领先 Radeon X800 Pro 有将近 25% 。而 Radeon X800 Pro 则领先上一代旗舰 Radeon 9800 XT 将近 60% 的 DX9 性能。 Radeon X800 XT 则约为 Radeon 9800 XT 的两倍性能,提升的幅度跟 nVIDIA 一样恐怖。
如果拿 NV40 来跟 R420 作比较的话,那么 GeForce 6800 Ultra 与 Radeon X800 XT 真可说是旗鼓相当, DX9 的性能差距可以说微乎其微, DX7.1 、 DX8.1 、 OpenGL 的性能则互有胜负。真可谓王见王,狭路相逢,杠上了!其它部份的交叉比对,请大家自行参考表中数据。当然,双方对驱动程序的调校会影响性能表现,也可能会造成彼此性能顺位的消长,随着双方驱动程序的持续改版,本站也将继续追踪并更新测试结果。
2004年07月12日11:22 于上海
版权作品 未经许可 请勿转载
|