每个 CPU 的服务器主板内存

4 hardware memory

我注意到在新的双插槽 1366 服务器类型主板上有两组 RAM。这是否意味着如果我安装了 72GB 的 RAM,Windows 将只允许每个处理器 36GB 还是一个处理器可以访问所有 72GB?

nik*_*nik 6

双插槽板将配置两个 CPU 系统,其中包括与每个插槽关联的内存插槽。如果有两个内存条,每个内存条都连接到一个 CPU 插槽。存储库将不能直接用于另一个插槽。

这意味着 72GB 容量的主板每个 CPU 插槽容量为 36GB。
但是,如果您的 DIMM 像在此 Intel 主板中那样不对称设置,
我怀疑您将在一个 CPU 上有 24GB,在另一个 CPU 上有 48GB...需要确认。

如果您指的是基于 Nehalem 的1366 板,您将获得每个 CPU 插槽 3 个内存插槽的设置。您将填充 3 个DDR3 DIMM以获得每 CPU 内存。

Nehalem 架构使用非统一内存架构 (NUMA)更好地访问来自其他插槽组的内存

NUMA 尝试通过为每个处理器提供单独的内存来解决这个问题,避免在多个处理器尝试寻址同一内存时性能下降。对于涉及传播数据的问题(常见于服务器和类似应用程序),NUMA 可以将单个共享内存的性能提高大约为处理器(或单独的内存库)数量的一个因素。

当然,并非所有数据最终都局限于单个任务,这意味着多个处理器可能需要相同的数据。为了处理这些情况,NUMA 系统包括额外的硬件或软件来在银行之间移动数据。此操作会降低连接到这些 bank 的处理器的速度,因此由于 NUMA 导致的整体速度增加将在很大程度上取决于在任何给定时间在系统上运行的任务的确切性质。


当您不使用 Nehalem NUMA 时,旧方案的工作方式不同,此ArsTechnica 文章页面中直观地显示了快速差异。基本上,您有最坏情况下的所有访问时间(多路内存访问和多路访问的全部成本)。

NUMA 技术允许跨银行更好的访问时间。最终结果是更好的内存吞吐量,特别是当每个处理器插槽将其数据本地化在其库中时。


我对这个答案的所有观点还没有信心,并邀请其他意见。


Pos*_*iet 5

从逻辑操作系统的角度来看,每个核心都可以访问完整的内存。

从性能的角度来看,根据内存位置和芯片的物理布局存在差异。内存访问将通过必要的路​​径进行路由,这可能会降低性能,具体取决于位置。

看一下 Nehalem 类型的主板,3 个 RAM 插槽组(或其倍数)连接到各个 CPU 芯片。Quickpath 互连允许其他 CPU 访问该内存。

因此,为了获得最佳性能,将涉及一些 numactl 技巧。例如,某些任务的共享内存可能位于内存中的一个位置,其中不同的线程具有不同的访问速度。

RAM 插槽的数量与此无关。

Intel 有很棒的文档,如果您想深入了解,请参阅http://www.intel.com/technology/quickpath/index.htm