¿Qué CPU lógica (núcleo) pertenece a qué socket?

¿Qué CPU lógica (núcleo) pertenece a qué socket?

Necesito probar el rendimiento de un programa multiproceso en 1 CPU, pero tengo una máquina con doble CPU. Necesito establecer afinidad con aquellas CPU lógicas que comparten su socket; de lo contrario, se beneficiarán enormemente de una mayor cantidad de FSB. Probé Affinity 0-7 y 8-15, pero los resultados difieren considerablemente, siendo el primero más rápido. Por lo tanto, no sé qué CPU lógicas comparten su zócalo.

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

Respuesta1

Los primeros 8 procesadores son de un chip y los segundos 8 procesadores de otro chip. Puedes distinguirlo por physical id. En cuanto a la diferencia en el rendimiento, actualmente no tengo idea.

Respuesta2

La latencia de 2 CPU es importante. Lea las hojas de datos de su placa base y sabrá que una de ellas es primordial y esencial para ejecutar la plataforma.

Por ejemplo, puede ejecutar la plataforma completando socket0 y socket0, socket1, pero no puede ejecutar la plataforma completando socket1 únicamente.

Es por eso que tienes un rendimiento diferente en cada uno. Deberían ser similares de todos modos, pero no serán idénticos.

información relacionada