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
最初の8プロセッサは1つのチップからのもので、次の8プロセッサは別のチップからのものです。 physical id
で区別できます。性能の違いについては、今のところわかりません。
2つのCPUのレイテンシーが重要です。マザーボードのデータシートを読むと、そのうちの1つが主要であり、プラットフォームを実行するために不可欠であることがわかります。
たとえば、socket0とsocket0、socket1を入力してプラットフォームを実行できますが、socket1のみを入力してプラットフォームを実行することはできません。
そのため、それぞれのパフォーマンスに違いがあります。とにかく似ているはずですが、同じではありません。