gpt4 book ai didi

networking - 不同socket上的CPU如何通信?

转载 作者:行者123 更新时间:2023-12-02 07:06:38 27 4
gpt4 key购买 nike

我正在调整并行 Java 程序的性能。我对架构效果很好奇。

假设一台机器有两个 CPU 插槽,每个插槽都有四核 Intel Xeon CPU,那么:

  • 两个 CPU 如何通信,通信速度有多快?
  • 同一芯片上的两个内核的通信速度有多快?
  • 同一芯片上的四个内核在通信或内存访问方面是否等效?

最佳答案

如何将线程调度到核心以获得接近最佳的内存性能取决于内存的访问模式,并且通常不值得这么麻烦。如果您的程序是用 Java 编写的,您可能无法获得接近最佳性能所需的控制级别。

现代 CPU 具有集成内存 Controller ,现代多插槽系统具有分布式内存。这就是所谓的

Non-Uniform Memory Access (NUMA)

在现代多插槽英特尔处理器中,插槽之间的通信是通过 QPI 完成的

QuickPath Interconnect (QPI)

QPI 是指定其工作原理的英特尔架构。 AMD 的同类产品是 HyperTransport。您可以在此处了解有关各种架构的更多信息:

System Architecture

对 1 级数据缓存中未命中的内存的访问可能由 2 级数据缓存(在同一插槽中)提供服务,或者可能由 Intel 所谓的“末级缓存 (LLC)”提供服务,这将位于具有该内存地址的内存 Controller 的套接字中。在另一个插槽中访问 LLC 可能需要几十个处理器周期,但仍然比访问 DRAM(超过一百个处理器周期)快得多。

关于networking - 不同socket上的CPU如何通信?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12202488/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com