包括两个处理器是否会增加最大 RAM 内存?

kan*_*uso 16 memory xeon

如果 E3-1285 v6 支持最大 64 GB RAM,使用双插槽主板是否会增加最大内存?我猜不是,但想知道原因。我的逻辑是,如果 RAM 是共享的,那么两个处理器都应该能够处理所有可用的 RAM,因此,它也将被限制为 64GB。对此有任何技术解释吗?

Tho*_*mas 32

在现代 CPU 中,内存控制器直接集成到 CPU 中,而在以前,内存是由 CPU 通过总线系统访问的。总线系统的优点是内存访问是统一的,这在单插槽 CPU 中仍然如此。
现在,进入双插槽系统,每个 CPU 都有专用的本地内存,另一个 CPU 的内存可以通过 QPI间接访问,简而言之,QPI 是两个 CPU 之间的链接。这称为 NUMA(非均匀内存访问)。

嗯,把事情放在一起。如果您有第二个 CPU,您可以增加系统的总内存量,但您还需要一个能够在双处理器模式下运行的 CPU。IIRC E3 系列不支持双插槽,E5 支持双插槽,E7 支持四插槽。

  • 你可以做到,你只需要一个带有内存控制器的 CPU 来处理更多的内存。Xeon E5 机器有 4 个内存通道,每个 CPU 最多可以安装 8 个 32 GB 的模块。 (4认同)
  • @kankamuso 集成的英特尔 GPU 对 OpenCL 没有用处。即使是入门级的独立 GPU,您也能获得更好的性能。 (2认同)

And*_*gge 10

首先,E3-1285v6 不支持多插槽,因此要增加系统中的 CPU 数量,您需要不同的 CPU。

虽然长模式下的 AMD 和 Intel CPU 使用 64 位指针,但今天可用的 CPU 仅限于 48 位。因此,最多可以寻址 256 TB 的内存,并且每个兼容 x86_64 的 CPU 都可以寻址该数量的内存。

但是,还有另一个限制:集成到 CPU 中的内存控制器。该内存控制器的通道数量有限(如果是 CPU:2),这意味着它可以同时与两个内存模块通信。通道可以在多个模块(通常为 2 个)之间交替,因此您通常可以为每个通道连接两个模块,在您的情况下总共可以连接 4 个模块。

如果您有一块安装了多个 CPU 的多插槽板,那么每个 CPU 将有一个内存控制器,因此最终通过安装第二个 CPU 将物理可安装内存(与可寻址内存无关)加倍。

  • 48 位是虚拟地址空间限制,而不是物理地址。这对内核来说很不方便,但它可以支持比映射到一个平面虚拟地址空间更多的物理内存(我们有一段时间使用 32 位 + PAE)。[x86-64 页表格式已经支持最多 52 位物理地址](/sf/ask/3255640671/ -48bit-long-compared-with-the),虽然真正的 CPU 支持较少。内存控制器细节在这里通常很重要,而不仅仅是内部 phys addr 宽度。 (8认同)