我有一台富士通 TX150 S7,我想升级它的内存。我认为这很简单,但显然事实并非如此。
该服务器的手册指出以下内容:
Memory slots: 6
Memory slot type: DIMM (DDR3)
Memory capacity (min. - max.): 1 GB - 32 GB
Memory protection: ECC
连同一些注释:
Memory notes: For the following modules a maximum of 4 DIMMs can be configured:
4GB (quad-ranked) with 1066MHz, 8GB RDIMM, all UDIMM modules.
Maximum configurable memory capacity: UDIMMs (max. 16GB) with all processors;
RDIMMs (max. 32 GB) with Xeon CPUs only.
The following modules can be configured 6x: 4GB (dual-rank) and 2GB (dual-rank)
然后手册继续讲述支持的特定配置:
Memory modules:
1 GB (1 module(s) 1 GB) DDR3, unbuffered, ECC, 1333 MHz, PC3-10600, DIMM
2 GB (1 module(s) 2 GB) DDR3, registered, ECC, 1333 MHz, PC3-10600, DIMM
2 GB (1 module(s) 2 GB) DDR3, unbuffered, ECC, 1333 MHz, PC3-10600, DIMM
4 GB (1 module(s) 4 GB) DDR3, registered, ECC, 1066 MHz, PC3-8500, DIMM
4 GB (1 module(s) 4 GB) DDR3, registered, ECC, 1333 MHz, PC3-10600, DIMM
4 GB (1 module(s) 4 GB) DDR3, unbuffered, ECC, 1333 MHz, PC3-10600, DIMM
8 GB (1 module(s) 8 GB) DDR3, registered, ECC, 1066 MHz, PC3-8500, DIMM
从中我得知我需要获得 ECC 内存,但由于我有一个 Xeon CPU(Intel(R) Xeon(R) CPU X3450),我可以获得任何类型的 ECC 内存:Registered 或 Unbuffered,只要我不这样做不要混合它们。
结果,我选择了以下记忆(乘以六):
Samsung 4GB 2Rx4 PC3 - 10600R - 09 - 10 - E1 - P0
从中我可以读到它是一个双排 4 GB 内存条,它已注册,我假设它是 ECC,因为它作为 ECC 内存出售,并且因为需要 ECC 内存的 RX300 S6 可以使用它,它的速度是 PC3-10600,它与手册中的内容相匹配。
但是,当我将这些内存条中的一个(或两个,或四个,或全部六个)放入服务器时,它将不再 POST。它会挂起,屏幕上什么也没有,并在一段时间后在其事件日志中写入以下错误:
BIOS POST Watchdog - Action: Hard Reset (Post Code: 0xC0)
相同的内存可以在另一台服务器(富士通 RX300 S6)上完美运行。同样,如果我将 TX150 S7 随附的 2 GB 无缓冲 DIMM 放回原处,它将毫无问题地工作。
我不知道为什么会这样——我对服务器内存兼容性的理解哪里错了?
在尝试了各种类型的内存之后,我确信富士通 Primergy TX150 S7 的内存控制器会阻塞各个 DRAM 芯片的数据总线宽度。
服务器附带的并且最终可以正常工作的内存芯片都具有 x8 (2Rx8) 的数据总线宽度。
你不能混合排名(1R 和 2R)、ECC、缓冲和未注册的内存是很清楚的,但我认为各个芯片的数据总线宽度并不重要。到目前为止,我认为更小的数据总线宽度只是意味着 RAM 条上的芯片更多(我在互联网上发现的大多数网站都将 2Rx4 和 2Rx8 之间的区别描述为只是 RAM 上的更多/更少芯片,没有其他影响)。
但是,没有一个带有 x4 (2Rx4) 的内存芯片在 TX150 S7 中工作,即使它们在其他服务器上工作正常,并且任何一个 x8 (2Rx8) 都可以工作,这很明显。