扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:存储时代——赵效民 2005年8月8日
关键字:
在本页阅读全文(共10页)
Micro-Threaded架构效能分析
我们现在已经清楚了XDR2之所以采用MT架构,就在于要减小行与列的颗粒度,那么在图形应用中,小的颗粒度会体现出多大的优势呢?下面我们就来对比一下。
三角形访问效率比较,左边是采用MT架构的DRAM核心,右边是传统的DRAM核心
我们假设访问一个由6个像素组成的三角形,每个像素4个字节,计24字节。从图中可以看出,对于MT架构的DRAM核心,由于列访问容量8字节,所以2KB的行容量中就有256个列,而对于传统核心的DRAM,4KB行容量则只需要128个列,显然MT架构更为细化,这样做的好处就是寻址更为精确有效。
对于8字节的行访问容量,总共只有两种可能的寻址情况发生,一种是访问4个列,一种是访问5个列。平均下来就是4.5个列。按列容量8字节计算就是36字节,而需要字节为24,有12个字是无效的,访问效率为24/36=66.67%。而对于传统的DRAM核心,共有8种可能出现的情况——4种需要访问2个列、3种需要访问3个列,1种需要访问4个列,平均下来需要访问2.6525个列,按每个列容量为32字节计算,则为84字节,其中有60个字节是无效的,访问效率为28.5%,从这一点中就可以看出MT架构的优势。
传统DRAM核心与MT架构核心的三角形平均访问率对比
在三角形访问率的对比中,我们可以发现MT架构在小三角形访问方面有着显著的优势。图中的tRR limit是指行访问容量的限制,一般的行访问容量是列访问容量的两倍,要访问的数据超过了这一范围,访问率就会下降,而在这一范围之内,效率不变。由于在未来的3D绘图中,出于对细节表现力的追求,小三角形的应用会越来越普及,因此MT架构的DRAM核心的优势也就会更加明显。而这也正是Rambus开发XDR2的缘由。
不过,这里需要指出的是,上面的分析是基于一种假想的设计,事实上,XDR2的数据传输频率为8GHz,即传输周期为0.125ns。而行寻址间隔周期为两个时钟周期,以500MHz的时钟频率计算为4ns,列寻址间隔周期为1个时钟周期,即2ns,因此XDR2的列访问容量为16字节,行访问容量为32字节。
XDR2内存对于6像素(每像素4字节)三角形的访问,共有4种情况
这样,对于上面的例子而言(寻址一个6个像素组成的三角形,每个像素4个字节),XDR2内存需要访问3.75的列,合60字节,访问效率为40%。看来Rambus在数据带宽与访问效率上选择了前者,毕竟与4GHz的数据传输率相比,8GHz提高了一倍,但66.67%的效率相对于40%,只是提高了66.7%,这样看来还是划算的。
小提示:如何迅速计算出列与行访问颗粒度 |
列访问颗粒度,一般就是指从逻辑Bank中读取一次的数据量,而从逻辑Bank中读取一次的数据量就是逻辑Bank的位宽,这个位宽就是以预取的位数乘以内存芯片接口位宽得来的。 比如DDR内存,接口位宽如果是8bit,由于DDR是2bit预取设计,那么其逻辑Bank的位宽就是16bit,合两个字节,这就是该规格的DDR内存的列访问颗粒度。也称之为列容量。对于GDDR3而言,由于位宽是32bit,预取为4bit,那么列访问颗度就是16字节。XDR2的预取设计为16bit,单通道位宽为8bit,因此XDR2的列访问颗粒度也就是16字节了。 而行访问颗粒度一般为列容量的两倍,因此也就不难推算出行访问颗粒度了。 |
理论上,MT架构可以应用于任何一个需要精确寻址的应用场合,而不仅仅是图形领域,比如大型的物理形态模拟计算系统(如流体力学仿真计算),在运算过程中会产生大量的小规模数据块,存储地点的随机性很大,而在网络交换机等设备中,由于网络数据包体积大多较小,并且是随机组合,因此也需要内存系统给予强大的访问效率,以节省宝贵的时间。此外,对于很多应用于消费电子产品中的处理器而言,则内部的缓存行(Cache Line)容量也较小,而Cache Line是缓存与内存之间交换数据的容量单位,较小的访问颗粒度,则可以确保与缓存之间的数据交换保持最佳的效率(比如Cache Line的容量若是16字节,对于32字节的颗粒度来说,就要浪费16字节的传输操作)。因此,Rambus也将XDR2的应用领域锁定在了除显卡以外的高性能运算、网络与消费电子设备领域。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。