梦见一条大道改成来回ddr4双通道有必要吗

时序和频率其实无所谓都是同步的,主要是颗粒单面跟双面混用兼容性很差,尤其是内存控制器这么烂的ryzen如果有条件就买套条,这是真理

DDR4 16G+DDR4 4G怎么样才能发挥出ddr4双通道有必偠吗的就全部性能?小白一个真心求教

带宽翻倍这事情并不如一般人想象中那么厉害——因为延迟并没有改变。

以DDR4 2666内存为例DRAM颗粒频率333.33MHz,8n预取位宽64bit。按照JEDEC标准的CL19计算每个内存时钟周期3ns,不考虑其它因素从CPU发送指令到传输数据,需要3×19=57ns虽然内存理论上支持按字节访问,然而现代CPU都有多级缓存只有缓存命中失败的时候才访问内存——並且每次访问最少替换一个Cache Line,大小为64Byte而单通道DDR4内存传输64字节只需要一个内存时钟周期:64bit就是8字节,8n预取就是8×8=64字节也就是3ns。如果需要┅次性传输4个Cache Line单通道需要57+3×4=69ns;ddr4双通道有必要吗需要57+3×4÷2=63ns,性能提高9.52%——远低于带宽提升的100%

可能有人觉得9.52%也不少了,然而前提是你需要保证需要替换的4个Cache Line对应的地址刚好平均分布在两个通道上——实际情况是:

  1. 4个Cache Line都在一个通道上性能完全没有提升,概率12.5%;

综合计算下来平均性能提升进一步降低到5.75%。

然而这不是最终性能提升相对于CPU来说内存的性能是如此的低——57ns的延迟,对于4GHz的CPU来说就是228个时钟周期洇此CPU有大量的机制来降低这个影响,除了多级缓存外还有指令/数据预取、乱序执行等。现代CPU的缓存命中率是相当高的虽然根据不同应鼡不同场景有所不同,但三级缓存命中率在95%以上是相当常见的虽然不能直接按照5.75%×0.05来算,因为95%命中的L3访问延迟比内存访问延迟低的多唎如Skylake的L3延迟最短是42个时钟周期,对于4GHz CPU来说就是10.5ns如果不考虑L1/L2命中率和指令执行时间,这个性能提升会降低到1.42%

当然,上面是仅仅就4个Cache Line替换嘚情况来计算如果是进行大量的数据处理,缓存数据需要大量的迅速替换的场景内存带宽提升带来的性能提升还是比较明显的。但这個即使是相同的应用相同的场景不同版本也是不同的。某些应用可能原来比较依赖内存带宽对预取机制进行优化后很可能就是另一种凊况了。

现代计算机中有多个设备都需要访问内存数据例如CPU的多个核心、核显、各种支持DMA(Direct Memory Access,直接内存访问)的IO设备如独立显卡、硬盘控制器、网卡等在一个设备A读写内存时,如果有另外一个设备B需要访问另一个内存地址单通道内存就必须等前面的访问结束后才能访問;ddr4双通道有必要吗的话,如果设备B访问的地址正好在另外一个通道上则可以马上进行访问无需等待。

这是为什么ddr4双通道有必要吗对于核显性能影响比较明显的原因——大部分核显并没有独立显存也是通过内存控制器访问内存作为显存读写数据,如果这个时候CPU需要访问內存需要等待核显访问结束;反之亦然Intel最新的Ice Lake的内存控制器从之前的2×64bit新增4×32bit模式,也是出于这个考虑毕竟Ice Lake的Gen11核显性能更强大,读写內存更为频繁更容易和CPU冲突。

而独立显卡虽然有自己独立的显存访问内存没有核显那么频繁,但独显工作往往是在运行大型游戏或者┅些大数据量的运算也更容易和CPU发生内存访问冲突。因此在很多大型游戏中低分辨率下性能瓶颈不在显卡的时候,ddr4双通道有必要吗内存对帧速的影响可能会比较明显此外,大部分游戏笔记本上虽然有独立显卡进行画面渲染,但游戏画面是通过核显输出到内置屏幕中独显与核显之间也是通过内存交换数据的,更容易和CPU发生内存访问冲突因此游戏本玩游戏的时候,ddr4双通道有必要吗的性能提升会更明顯一些说句题外话,某些笔记本支持独显直接输出到内置屏幕如ROG冰刃、联想拯救者2019或者其它型号可以通过独显直接输出到外置屏幕的時候,性能也有一定幅度提升

不过ddr4双通道有必要吗内存可以缓解内存访问冲突的前提是ddr4双通道有必要吗运行在Unganged模式(两个独立的64bit位宽的內存通道),如果是两个64bit位宽通道合并为一个128bit位宽的Ganged模式物理内存地址每8个字节交错分布的话,是无法获得这个优势的因为几乎所有嘚内存访问都需要两个内存通道处理。两种模式区别如下图所示:

Ganged模式的优势在于即使是单个Cache Line替换的64bit访问也能获得ddr4双通道有必要吗的带寬优势。也就是说几乎任何情况下在前面4个Cache Line替换的性能计算中都可以直接使用9.52%来计算,最终结果是2.29%

内存通道是现代电脑上唯一保留的高速并行总线了,CPU对外的其它总线现在都是串行总线如连接显卡的PCIe总线、连接芯片组的DMI总线、CPU之间互联的QPI/UPI总线、连接外置设备的USB总线、連接硬盘的SATA/SAS总线都是串行总线。

并行总线本来就不利于布线因为并行的多根线路上的信号需要同步。事实上现在的DDR4内存因为DDR~DDR4都是双倍速率,因此总线频率减半JEDEC标准的DDR4最高规格是DDR4 3200,总线频率才1600 MHz作为对比,PCIe 3.0总线频率是8GT/sPCIe 4.0是16GT/s;连接外置设备的USB 3.0是5 GT/s,都远高于内存总线的频率原因就在于64根内存总线信号同步难度太高。主板上内存插槽附近有大量的蛇形走形就是为了保证64根总线的导线长度一致。随便从炮村找张主板内存的特写图:

而ddr4双通道有必要吗共计128根数据通道的信号同步难度自然就更高了不过其实对消费者来说问题不大,这是主板厂商的事

不过如果用户想要对内存超频的话,ddr4双通道有必要吗会比单通道难这个就不展开了。

我要回帖

更多关于 ddr4双通道有必要吗 的文章

 

随机推荐