MCPLive > 杂志文章 > GDDR5的死敌 让人欢喜让人忧的XDR2显存

GDDR5的死敌 让人欢喜让人忧的XDR2显存

2009-07-08CleanBlue《微型计算机》2009年6月上

法宝五:创新的数据效能提高技术——微线程架构

在处理器中有微线程,在显卡中也有微线程的概念,那么内存的微线程是什么?会带来什么好处?它会给予我们更快的访问速度和更省电的访问方式吗?别着急,请往下看。

我们知道,对DRAM的访问可以被分为行访问和列访问(你完全可以把行访问想象成二维坐标轴的X轴,而把列访问想象成Y轴)。由于设计和访问规则的限制,在传统的DRAM中进行一次行访问,至少需要访问512-bit的数据,512-bit被称为行粒度;执行一次列访问,至少需要128-bit的数据,128-bit被称为列粒度。所谓“粒度”,就是你访问数据小的度量标准。哪怕你在某一行仅仅需要1-bit的数据,你都得把512-bit的数据全部访问一遍才行。打个比方来说,如果你去图书馆找书,知道书存放在三号书架,为了找到这本书,你必须将三号书架上所有的书都看一遍,哪怕你已经找到了你想要的目标,反正不把书架上的书都看完,你压根别想拿走。

可能有些用户认为几百bit的数据是多么的微小!对显卡来说,这样大的粒度,让一些小三角形的数据信息存储成为一个麻烦的问题。我们可以这样计算:如果某三角形占据了6个像素,每像素4-bit的话,一共就是24-bit的信息。当然,你可以轻松认为这24-bit信息都在一行或者一列中。实际上显存在存储数据时,不会将数据都塞在某处集中处理。也就是说三角形的信息不可能都存放在同一列(一行)中。这个三角形可能被放在2个列中,也可能被放在4个列中。

总之,三角形的数据是分散放着的。如果三角形的数据被放在2列中,则需要读写256-bit的数据,如果放在4列中,则需要读写512-bit的数据。三角形本身只有24-bit,幸运的话,只需要多找
232(256-24)个无用的数据就可以读出三角形了,如果你不幸运,那么你就被迫做了95.31%的无用功(1-24÷512=0.9531)。为什么要做这么多无用功?很简单,粒度,凡是经过的行和列的数据都必须访问,这就是小粒度过大的后果。


图11

从上面的分析我们可以看出,过大的行粒度和列粒度的存在导致显存访问数据时做了大量的无用功。为了解决这个问题,XDR2提出了更新的处理方法——XDR2集成RDRAM的双数据通道技术(图11),但数据通道却是分别独立的,这有效降低了行粒度和列粒度。

根据Rambus数据,XDR2的行粒度为128-bit,而列粒度为32-bit,仅为传统粒度的25%。这就意味着你如果寻找24-bit的数据,2次找到的话则仅仅多找40-bit(32×2-24)即可,不幸的情况,你也仅仅多耗费了81.25%的时间,节省了约14%。更小的粒度的意义不仅仅在于提高访问或者读取数据的有效性上,在图形计算中,更为精细的三角形应用越来越广泛,更小的粒度对降低显存无用功非常有意义。而在流体力学计算等对小数据量非常敏感的计算中,更小的粒度更是能明显提升存储单元的效能。另外,更少的访问会降低能耗,因为无论是数据存储还是传输,都需要耗费大量的能量。这是XDR2相对GDDR5节能的重要方面。

总结:XDR2,成功的技术,堪忧的前景

从上述分析可以看出,Rambus在整个XDR2的技术研发和操作上是非常成功的。不过我们担忧的并不是它的技术规范,而是市场推广。相比GDDR和DDR的庞大市场占有率,在PC机方面,
XDR2的占有率依旧是0。虽然XDR已经成功入驻了PS3,给Rambus带来了一丝希望的曙光,但对于这样一个需要全新的设备和生产线才能生产出的产品,如果不是大规模平摊成本的话,几乎没有任何一家厂商愿意冒如此大的风险去生产它,因此终Rambus的发展肯定还是需要PC机的辅助。

我们已经看到了RDRAM的失败先例,随后的XDR的小规模应用应该算作是不错的兆头。面对强大的GDDR5,XDR2完全有能力将其在技术上挑于马下。Rambus已经为我们展示了它在知识产权保护上的能力,但是市场推广方面还需要进一步的努力才行。说不定在下一次的NVIDIA或AMD的高端显卡上,我们就能看到XDR2给我们带来的惊喜。毕竟XDR2是非常有潜力的出色存储技术。

本文导航

分享到:

用户评论

用户名:

密码: