哪个逻辑 CPU(核心)属于哪个插槽?

哪个逻辑 CPU(核心)属于哪个插槽?

我需要测试一个多线程程序在 1 个 CPU 上的性能,但我有一台双 CPU 机器。我需要为那些共享插槽的逻辑 CPU 设置亲和性,否则它们会从较大的 FSB 数量中受益匪浅。我尝试了亲和性 0-7 和 8-15,但结果差别很大,第一个更快。因此我不知道哪些逻辑 CPU 共享其插槽。

lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                16
On-line CPU(s) list:   0-15
Thread(s) per core:    1
Core(s) per socket:    8
CPU socket(s):         2
NUMA node(s):          4
Vendor ID:             AuthenticAMD
CPU family:            16
Model:                 9
Stepping:              1
CPU MHz:               800.000
BogoMIPS:              4000.40
Virtualization:        AMD-V
L1d cache:             64K
L1i cache:             64K
L2 cache:              512K
L3 cache:              5118K
NUMA node0 CPU(s):     0-3
NUMA node1 CPU(s):     4-7
NUMA node2 CPU(s):     12-15
NUMA node3 CPU(s):     8-11


~]$ cat /proc/cpuinfo | grep 'core id'
core id         : 0
core id         : 1
core id         : 2
core id         : 3
core id         : 0
core id         : 1
core id         : 2
core id         : 3
core id         : 0
core id         : 1
core id         : 2
core id         : 3
core id         : 0
core id         : 1
core id         : 2
core id         : 3

答案1

前 8 个处理器来自一个芯片,后 8 个处理器来自另一个芯片。您可以通过 来区分physical id。至于性能差异 - 我目前不知道。

答案2

2 个 CPU 的延迟很重要。阅读主板的数据表,您就会知道其中一个是运行平台的主要和必不可少的。

例如,您可以通过填充socket0和socket0、socket1来运行平台,但不能仅通过填充socket1来运行平台。

这就是为什么每个版本的性能都不同。它们无论如何都应该相似,但不会完全相同。

相关内容