MCPLive > 杂志文章 > AMD Radeon HD 6970/6950显卡评测

AMD Radeon HD 6970/6950显卡评测

2011-02-17《微型计算机》评测室《微型计算机》2011年1月下

更好地理解4D架构:像素计算方法

从本质上来说,显卡计算的目标就是屏幕上显示的像素点。例如一台24英寸显示器分辨率为1080p(1920×1080),如果你用这台显示器玩游戏的话,显卡必须保证在一秒钟之内至少有24张1080p的图像计算出来,然后才能在显示器上看到流畅的画面。

单独将一个像素拆分来看可以发现,其由两个部分构成:色彩和坐标。色彩方面自然是RGB三原色,再加上一个特殊的透明度参数,也就是A,终组成RGBA四个数据的组合。每一个像素点,都需要这四个参数才能终确定色彩的信息。我们再来看看坐标,在显终端上,像素是以二维方式存在的,即只存在X和Y两个坐标。但我们都知道,之所以称之为3D计算,就是因为显卡在初对物体建模的时候,是按照3D空间的形状来处理的。我们现在在屏幕上看到的2D画面,只是3D场景的一个投影而已——只不过这个投影是根据观察者也就是游戏玩家所需要的视角来不断变换的。这说明屏幕上每一个像素,先需要XYZ三维坐标才能确定位置,后通过光栅化的方法将其转换为XY二维场景。二维场景中已经包含了类似“近大远小”的深度信息。

但这还不够,很多点并非单独的点,它们还需要包含其他信息,比如3D计算中不同坐标系之间的变换,就需要确定不同坐标系之间的计算方法。传统的XYZ三维坐标并不包含坐标系信息,因此还得加上一个数据,这就诞生了XYZW——齐次坐标。齐次坐标是目前计算机图形学应用的重要的手段,可以大大简化几何变换的计算,确定像素位置,还能够对向量和点进行有效区分。

我们现在就可以总结计算机计算中对某一个点的计算方法了。对点来说,色彩信息有四个:RGBA;坐标信息也有四个:XYZW。初的分离式渲染架构(比如Radeon 9700等老显卡,分为顶点引擎和像素引擎),是分开处理像素渲染和顶点渲染的,他们的像素渲染确定的就是利用RGBA数据,顶点坐标变换的处理是利用XYZW数据。在统一渲染时代后,无论是RGBA还是XYZW,从“外形上”来看,都需要四次计算才能满足需求,因此,在AMD传统的SIMD架构上,基本的结构是4D,也就是一次计算可以处理这四个信息。

NVIDIA的1D架构

相比AMD的SIMD架构,NVIDIA采用了MIMD(多指令多数据流)的设计,这种设计保证了显卡随时处于高效率运转。数据在进入NVIDIA显卡的流处理单元之前,就已经被全部拆分为1D,然后送入1D流处理单元。


NVIDIA目前的DirectX 11显卡均采用1D架构设计

比如进来一个3D数据,拆分为三个1D,计算三次;进来一个2D数据,拆分为2个1D数据,计算2次;在差劲的情况下,进来的全部都是4D数据,每个数据在AMD的显卡中,一次就可以完成,但NVIDIA显卡需要四次计算。从理论来说,MIMD 1D计算方法的效率虽然接近100%,但问题是大量多数据需要多次计算。因此NVIDIA设计了分频的核心——流处理器频率比核心频率高出一倍左右,再加上庞大的流处理单元数量,也保证了相当高的性能。

分享到:

用户评论

共有评论(3)

用户名:

密码: