三个问题
Kevin将DRAM延迟问题分成四个部分,笔者将在这里总结个中三个:
低效的批量数据移动。
DRAM刷新滋扰。当DRAM正在刷新时,它不能全部被访问。
单元格(Cell)潜伏期的变革——由于制造变异性。
至于第四个问题:延迟所带来的影响,有兴趣的朋友可以一起谈论。
1.低效的批量数据移动
在内存和存储代价高昂的时候,数据移动被限定在一个寄存器大小的块中,或者最多是来自磁盘的512字节块。但如今,在存储容量达千兆字节的存储空间和海量内存的情形下,海量数据移动变得越来越普遍。
但数据移动的架构——从内存到CPU,再到有限的内存总线——都没有改变。Chang的建议是一种新型的、高带宽的存储器子阵列之间的数据通路,利用几个隔离晶体管在同一存储器中的子阵列之间创建宽——8192位宽——并行总线。
2.DRAM刷新滋扰
DRAM内存单元须要刷新以保存数据,这便是为什么它被称为动态RAM。DRAM刷新是成行列步队,而不是一次性刷新的,由于这样做须要太多的能耗。但是,当一个行列步队被刷新时,它不能被访问,这会造成延迟。
DRAM的延迟正在变高,由于随着芯片密度的增加,须要更新更多的行列步队,32Gb的芯片上可能降落将近20%的性能。
Chang提出了两种机制,即通过对bank和子阵列的内存访问进行并行刷新来隐蔽刷新延迟。一个是利用无序的per-bank刷新,使内存掌握器可以指定一个空闲的bank来刷新,而不是常规的严格循环顺序。第二种策略是写-刷新操作并行化,使刷新延迟和写延迟重叠。
在他的测试中,利用8核CPU,这些策略提高了超过27%的加权内存性能。
3.单元格延迟变革
得益于制造工艺的提升,影象单元格可以有大量性能提升,随着密度的增加而增加。但是DRAM被指定以最慢的单元的速率可靠运行,这意味着如果利用最快的单元格,就会有显著的性能上升。
Chang在论文中提出了两种利用这种变革的机制,得到的速率提升从13%提高到了险些20%。
探索与优化
在系统架构中,探索瓶颈和修复瓶颈的事情是没有终点的。过去20年内,DRAM一度被认为难有进步,但我们看到,其延迟水平也会被改变。
随着越来越多的晶体管、专业指令集和诸如此类的性能的提高,降落DRAM延迟也将成为性能改进的紧张目标。