![DIMM:单列、双列和四列](https://linux22.com/image/494791/DIMM%EF%BC%9A%E5%8D%95%E5%88%97%E3%80%81%E5%8F%8C%E5%88%97%E5%92%8C%E5%9B%9B%E5%88%97.png)
DIMM 的“等级”对服务器内存有何影响?例如,查看服务器配置时,我看到同一台服务器提供以下配置:
2GB (1x2GB) Single Rank PC3-10600 CL9 ECC DDR3-1333 VLP RDIMM
2GB (1x2GB) Dual Rank PC3-10600 CL9 ECC DDR3-1333 VLP RDIMM
鉴于单列与双列或双列与四列的选项始终是:
- 快点?
- 便宜点儿?
- 更高的带宽?
以下是IBM 的说法(第 7 页)关于这个问题,至少关于他们的 HS22:
为了获得最佳性能,确保每个通道中安装具有适当数量列的 DIMM 非常重要。建议尽可能在系统中使用双列 DIMM。双列 DIMM 提供更好的交错,因此性能优于单列 DIMM。
例如,在 SPECjbb2005 中,装有六个 2GB 双列 DIMM 的系统比装有六个 2GB 单列 DIMM 的系统性能高出 7%。双列 DIMM 也优于四列 DIMM,因为四列 DIMM 会导致内存速度降低。
另一个重要指导原则是每个通道填充等效等级。例如,应避免在一个通道中混合使用一个单等级 DIMM 和一个双等级 DIMM。
最终,内存等级数量的影响因服务器/芯片组而异。例如,在 IBM 的 x3850X5 服务器上等级越高越好(参见 §3.8.4):
对于 x3850 X5 中的 Xeon 7500/6500 处理器,拥有更多等级可带来更好的性能。原因在于寻址方案,它可以跨等级扩展页面,从而使页面实际上更大,因此页面命中周期更多。
答案1
维基百科对排名有相当好的解释(关联)我认为 RamCity(金士顿内存供应商)对等级的解释更简洁(关联):
简单来说,内存等级就是使用内存模块上的部分或全部内存芯片创建的数据块或数据区域。
等级必须是 64 位数据宽度;在支持错误校正码 (ECC) 的内存模块上,64 位宽的数据区域需要 8 位宽的 ECC 区域,总宽度为 72 位。根据内存模块的设计方式,它们可以包含一个、两个或四个 64 位宽的数据区域(或 72 位宽的区域,其中 72 位 = 64 个数据位和 8 个 ECC 位)。
文章继续提到价格变化:
为什么单列和双列内存模块的价格不同?
一般而言,单列内存模块使用 x4(“By 4”)DRAM 芯片构建,比双列内存模块(使用 x8 DRAM 芯片构建)更昂贵;两种模块类型的芯片数量相同,但 x4 DRAM 比 x8 DRAM 更昂贵。使用 PC2700 或 PC2-3200 内存时,双列内存模块可能会限制服务器未来的可升级性和容量。在为基于 Intel Lindenhurst 的服务器购买内存模块时,内存成本和容量之间的权衡是需要考虑的重要事项。
在性能方面,我参考维基百科:
由于各个等级共享相同的数据路径,因此无法同时访问它们。
总而言之,等级似乎与密度和定价的关系比实际性能更大。诚然,我是根据供应商和维基百科的一般性陈述来判断的,我认为大多数人不会花太多精力去研究等级。对于大多数服务器管理员来说,唯一重要的是 RAM 有匹配的等级。我认为这不是一个实际的规范或要求,但它有助于保持一定的一致性,并使内存在多个类似的服务器中可以互换。
请记住,大多数服务器都是可升级的,RAM 密度是其中的一个重要因素。最好(尽管更昂贵)为服务器购买更密集的 RAM,为未来的升级留出空间。
答案2
原则上,内存排序可以视为模块上的内存分组。它具有相同的限制效果,并且原则上没有太大区别。
您一次只能访问内存通道上的一个内存列,并且从/向该通道读取/写入的速度不能比仅安装单列芯片时快得多。
内存排序背后的主要思想是将更多的内存装入单槽模块,从而减少所需的内存库数量。
与内存银行相同,安装的模块(等级)越多,允许的内存速度就越慢。
一般来说,两列内存(两个单列模块或一个双列)不会影响内存速度(甚至会将内存生产率提高到 10% 左右)。
四个等级(一个四等级、两个双等级或四个单等级)将要求降低内存速度(使总体生产力与仅有单等级模块大致相同)。
八个等级(如果支持) - 分为两个步骤(总体生产率比单个单等级模块低约 10%)。
可以这么说,你用内存容量来交换内存速度。
答案3
据我所知,单列 DIMM 比双列 DIMM 更贵。为了在单列 DIMM 上装入相同数量的内存,制造商必须使用更大容量的芯片来弥补。这就是为什么单列 DIMM 往往更贵的原因。
我认为等级与 DIMM 上芯片的连接器数量有关。由于连接器数量有限。为了以更低的成本安装更多内存,他们在 DIMM 上使用两个存储体,这样他们就可以使用更小的芯片来实现相同数量的内存。这就是为什么我们可以运行存储体而不会填满所有内存插槽的原因。
答案4
多列 DIMM 的主要影响因素是内存 IC 密度。
代价是某些芯片组可能存在兼容性问题。尽管在某些芯片组上,双列 DIMM 的性能更好。
单列 DIMM 往往更贵;因为要达到相同的容量,内存 IC 必须更大。