web-dev-qa-db-ja.com

どの論理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
6
Vladimir F

最初の8プロセッサは1つのチップからのもので、次の8プロセッサは別のチップからのものです。 physical idで区別できます。性能の違いについては、今のところわかりません。

4
Serge

2つのCPUのレイテンシーが重要です。マザーボードのデータシートを読むと、そのうちの1つが主要であり、プラットフォームを実行するために不可欠であることがわかります。

たとえば、socket0とsocket0、socket1を入力してプラットフォームを実行できますが、socket1のみを入力してプラットフォームを実行することはできません。

そのため、それぞれのパフォーマンスに違いがあります。とにかく似ているはずですが、同じではありません。

0
tygore