![缺少内存(BIOS 检测到 8 x 2GB,但显示只能安装 12 GB)](https://linux22.com/image/1380559/%E7%BC%BA%E5%B0%91%E5%86%85%E5%AD%98%EF%BC%88BIOS%20%E6%A3%80%E6%B5%8B%E5%88%B0%208%20x%202GB%EF%BC%8C%E4%BD%86%E6%98%BE%E7%A4%BA%E5%8F%AA%E8%83%BD%E5%AE%89%E8%A3%85%2012%20GB%EF%BC%89.png)
操作系统:OpenSuse 12.3(x64)
问题:无法使用所有检测到的内存
我最近为我的工作站购买了更多 RAM(2Rx4)。主板有 8 个插槽,虽然 BIOS 识别出所有 8 个插槽都有 2GB 的 RAM,但“总可安装量”只有 12GB。
dmidecode
告诉我支持的最大 RAM 是 32GB,所以我怀疑这可能是排名问题,尽管我对内存不是很熟悉。
更新
明确地说——有人知道为什么我无法使用所有检测到的内存吗?
我之前有 8GB,采用 4x2GB 配置。
RAM 详细信息
2GB 240p PC2-5300 CL5 36c 128x4 DDR2-667 2Rx4 1.8V ECC FBDIMM
所有 8 个插槽均注册为活动状态(参见dmidecode
输出),并且 BIOS 检测到所有 8 个内存条
主板详细信息
Base Board Information
Manufacturer: Dell Inc.
Product Name: 0GU083
Version: A00
Serial Number: ..CN1374073H00UP.
可用内存(BIOS 也显示已安装 12GB 内存,但列出了 8 个 2GB 内存条)
total used free shared buffers cached
Mem: 12039 11888 151 0 549 10825
-/+ buffers/cache: 512 11527
Swap: 1992 573 1419
更新2
memtest x86
也只能检测到 12GB 内存;
答案1
我在这里冒昧地讲一下。如果我错了,请告诉我,我会更正或删除该帖子:
前言:
- 您的工作站是带有 0GU083 主板的 Dell precision 490。
- 董事会有一个Intel 5000X 芯片组内存控制器全缓冲DIMM。
- 您安装了 8 个 DIMM。所有 8 个都是支持 ECC 的 FB DIMM。(查看您的 DMI 解码日志,DIMM #1 的第 561 行至第 578 行,后面是其他 7 个 DIMM 的信息。
- 8x2 GiB 是 16 GiB。BIOS 成功检测到存在 16 GiB。
在 POST / 内存检查期间遇到错误:参见第 549 行:Descriptor 4: Multi-bit ECC memory error
和第 927 行:Status: Firmware-detected hardware failure
。
您的主板尝试使用四组全缓冲 DIMM (FBD)。(请参阅手册ftp://ftp.dell.com/Manuals/all-products/esuprt_desktop/esuprt_dell_precision_workstation/precision-490-dt_user%27s%20guide_en-us.pdf)。
结束前言:
这意味着:
- 您无需担心等级。(?) 这里不是 100% 确定,但等级与内存控制器和并行连接的 DIMM 之间的电气路径有关。FB-DIMM 使用专门设计的串行接口来避免等级问题。
- 至少有一个 DIMM 报告了错误。该错误仍然存在或需要清除。
Linux 可能没有添加那个有故障的 2 GiB DIMM。
现在,添加到 POST 的新信息清楚地表明,虽然 BIOS 检测到 16GiB,但它也只“安装”了 12 GiB。这正是 Linux 将使用的。因此,有关 Linux 内存添加或跳过内存区域的部分并不相关。
我不明白的是为什么这会导致 12GiB 内存而不是 14 GiB。我能想到的唯一原因是它在连续添加内存区域后遇到错误时放弃了。就像这样:
Add 2GiB DIMM. 2GiB now available.
Add 2GiB DIMM. 4iB now available.
Add 2GiB DIMM. 6GiB now available.
Add 2GiB DIMM. 8GiB now available.
Add 2GiB DIMM. 10GiB now available.
Add 2GiB DIMM. 12GiB now available.
Add 2GiB DIMM. ERROR. STOP ADDING. Remain at 12GiB.
Stopped. Do not try the possibly working remaining DIMM.
如果能从更了解内核如何添加内存的人那里得到确认,那就太好了。帮助如何测试损坏的区域和如何避免也很好。
另一个潜在问题是内存插槽损坏或主板上的线路损坏。这甚至会影响多个插槽,因为 FB-DIMM 是链接的,而不是并行访问的。
如果你检查Intel 5000X 内存控制器数据表然后Figure 1.1
你会看到这个:
该图显示最多 16 个 FBDIMM。最多是一个关键字。您的有 8 个。对于 8 个插槽同时保持四通道内存访问的合理方法是 4 个通道,每个通道有 2 个插槽。
如果其中一个通道不工作,那么您将丢失两个 DIMM,从而导致 12 GiB。
答案2
我在一台 12 GB 的机器上遇到了完全相同的问题,但只读取了 4 GB。在任务管理器中检查资源监视器后,它显示为 BIOS 和其他设备保留了 8 GB。拔下各种 USB 设备并重新启动后,所有 12 GB 都恢复了。希望这能有所帮助。
答案3
我刚刚找到了这个帖子,因为我遇到了类似的问题。BIOS 显示每个插槽有 4 GB,但在同时升级到 Dual Xeon 5365 和 8 x 4 GB 后,双模式下只有 8 GB 可用。之前我有 4 x 2 GB,没有问题。
我交换了 DIMM,但没有什么实际变化...我最终清洁了所有 DIMM 的触点,当我将它们放回原位时,它显示四核模式下有 32 GB 可用,并且现在正在运行 MemTest86+。
所以,永远不要忘记,有时可能只是需要彻底清洁。