为了解决内存带宽带来的瓶颈问题,更好地为CPU传输数据,一种可行的方法是在CPU和内存之间增加一个数据传输通道。这就是双通道(Dual Channel)内存,如图5-10所示。
增加内存通道后,内存总线的带宽也变为原来的两倍,提示了性能,能够满足CPU带宽的需求了,如图5-11所示。
图5-10 双通道内存与芯片组和CPU
图5-11 双通道内存性能提高
以DDR42400为例,DDR42400实际带宽为35000MB/s,组成双通道后的带宽为35000×2=70000MB/s。
要组成双通道其实对内存的要求是很苛刻的,有以下限制:
1)内存必须是两条,并放入同一插槽的不同通道。比如Slot 1的A通道、B通道。一般主板设计时已经用颜色来区分了,只要将两条内存安装在相同颜色的插槽中即可。
2)组成双通道的内存容量必须相同,比如1GB+1GB。
3)内存的内存颗粒(DRAM芯片)必须相同,比如同为现代256MB DRAM。
4)DRAM总线带宽必须相同,比如同为×8或×16。
5)必须同是单面或双面内存。
总之,配置双通道时,首先要求主板支持双通道,然后要求选用型号规格、容量相同的内存。
图5-12展示了主板的双通道内存插槽。
图5-12 双通道内存插槽
主流的主板上的内存插槽都是由不同颜色的两条组成一个通道。只要将两条相同的内存插在同颜色的两个插槽内就可以组成双通道了,如图5-13所示。
图5-13 主板上的双通道内存插法
1)对称双通道:理论上只要通道1和通道2的内存容量相当、内存颗粒相同的话就可以组成双通道。所以在通道1上插一条1GB内存,在通道2上插两条2GB内存,同样可以组成双通道。但因为内存颗粒和总线带宽等条件都不容易做到一致,所以这种方法组成双通道是比较困难的。
2)非对称双通道:在非对称双通道模式下,两个通道的内存容量可以不相等,而组成双通道的内存容量大小取决于容量较小的那个通道。例如,通道1有一条1GB内存,通道2有一条2GB内存,则通道1中的1GB和通道2中的1GB组成双通道,通道2剩下的1GB内存仍工作于单通道模式下。需要注意的是,两条内存必须插在颜色相同的插槽中。
因为主板的内存模组会自动判断内存是否能组成双通道,或有一部分可以组成双通道,所以就算使用两条不一样的内存,也推荐使用双通道的插法。这样可能会有一部分内存被作为双通道来使用,剩下的就会当作单通道使用。
1)三通道:随着Intel Core i7平台的发布,三通道内存技术孕育而生。与双通道内存技术类似,三通道内存技术的出现主要是为了提升内存与处理器之间的通信带宽。前端总线频率大多为800MHz,因此其前端总线带宽为800MHz×64bit/8=6.4GB/s。如系统使用单通道DDR 400内存,由于单通道内存位宽只有64bit,因此其内存总线带宽只有400MHz×64bit/8=3.2GB/s,显然前端总线将有一半的带宽被浪费。三通道内存将内存总线位宽扩大到了64bit×3=192bit,同时采用DDR31066内存,因此其内存总线带宽达到了1066MHz×192bit/8=25.5GB/s,内存带宽得到巨大的提升。图5-14展示了三通道主板。
2)四通道:四通道是在三通道的基础上增加了一条数据通道,性能方面目前还没有准确的数字。不过只有少量的主板支持四通道,说明目前的四通技术实用性还不是很高。在Sisoft Sandra 2012 benchmark(美国桑德拉软件工程组织)测试项目中,单通道到四通道的内存带宽的变化几乎呈线性增长,单通道内存带宽为8.47GB/s,变化为双通道后为16.85GB/s,几乎翻了一倍,而提升至三通道后更是达到了24.56GB/s。最后,在四通道情况下更是达到了30.38GB/s,如图5-15所示。
图5-14 三通道主板
图5-15 支持四通道的华硕主板