真DX11架构发威!HD5000输的心服口服
● 流处理器倍增只是量变,架构的革新才是质变
不管GPU架构改不改,流处理器数量总是要扩充的,准确的说是以级数规模增长,这样才能大幅提升理论性能。我们知道,从RV770到RV870,AMD将流处理器数量翻了一倍;从GT200到GF100,NVIDIA也将流处理器数量翻了一倍(从240到512个,但GTX480只开启了480个)。
但我要说的是,流处理器数量的变化只不过是量变,而GPU架构的改变才是质变。现在我们就来看看RV870与GF100架构上的改进,并进行对比。
★ RV870有一个装配引擎,内含两个Rasterizer和Hierarchial-Z
RV870的双核心模块设计
ATI RV870包括流处理器在内的所有核心规格都比RV770翻了一倍,ATI选择了“双核心”设计,几乎是并排放置两颗RV770核心,另外在装配引擎内部设计有两个Rasterizer(光栅器)和Hierarchial-Z(多级Z缓冲模块),以满足双倍核心规格的胃口。
★ GF100有四个光栅引擎,内含四个Rasterizer和Hierarchial-Z
GF100可以看作是四核心设计
如果说RV870是“双核心”设计的话,那么GF100的流处理器部分就是“四核心”设计,因为GF100拥有四个GPC(图形处理器集群)模块,每个GPC内部包含一个独立的Raster Engine(光栅化引擎),而以往的GPU(比如RV870和GT200)都是整颗共享一个Raster Engine。
我们知道RV870的Rasterizer和Hierarchial-Z双份的,而GF100则是四份的,虽然命名有所不同但功能是相同的。
★ 光栅引擎的作用
Raster Engine由三个流水线阶段组成。在边缘设置阶段中,可提取顶点位置、计算三角形边缘方程。没有朝向屏幕方向的三角形都通过背面剔除而删掉了。每一个边缘设置单元在一个时钟周期中最多都能够处理一个点、线或三角形。光栅器(Rasterizer)为每一个基元而运行边缘方程并计算像素的覆盖。如果开启了抗锯齿功能,那么就会为每一个多采样以及覆盖采样执行覆盖操作。每一个光栅器在每个时钟周期内均可输出8个像素,整个芯片每个时钟周期内总共可输出32个光栅化的像素。光栅器所生成的像素将被发送至Z坐标压缩(Z-cull)单元。Z坐标压缩单元获取像素图块(Pixel Tile)并将图块中像素的深度与显存中的现有像素进行比较。完全处于显存像素后面的像素图块将从流水线中剔除,从而就不再需要进一步的像素着色工作了。
Raster Engine的主要功能就是边缘侦测、消隐与坐标压缩,因此会严重影响GPU在超高分辨率下的图形性能、显存利用效率、以及抗锯齿的效率和画质。
★ GF100是真正四核心的GPU
GF100的四个GPC是完全相同的,每个GPC内部囊括了所有主要的图形处理单元。它代表了顶点、几何、光栅、纹理以及像素处理资源的均衡集合。除了ROP功能以外,GPC可以被看作是一个自给自足的GPU,所以说GF100就是一颗四核心的GPU。
这是GF100的一个GPC
在每个GPC内部,是由四组SM共享一个Raster Engine,现在我们进一步细分GF100,来详细看看SM的结构。