lscpu
コマンドの出力を確認できます-
_jack@042:~$ lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 56
On-line CPU(s) list: 0-55
Thread(s) per core: 2
Core(s) per socket: 14
Socket(s): 2
NUMA node(s): 2
Vendor ID: GenuineIntel
CPU family: 6
Model: 79
Model name: Intel(R) Xeon(R) CPU E5-2690 v4 @ 2.60GHz
Stepping: 1
CPU MHz: 2600.000
CPU max MHz: 2600.0000
CPU min MHz: 1200.0000
BogoMIPS: 5201.37
Virtualization: VT-x
Hypervisor vendor: vertical
Virtualization type: full
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 35840K
NUMA node0 CPU(s): 0-13,28-41
NUMA node1 CPU(s): 14-27,42-55
_
_2
_ソケット(プロセッサのようなもの)があり、各ソケットの内部に_14
_コアがあることがわかります。つまり、合計_2x14=28
_物理コア。通常、CPUは複数のコアを含むことができるため、CPUの数がコアの数よりも少なくなることはありません。しかし、出力CPUs(s): 56
に示されているように、これが私を混乱させています。
私はThread(s) per core: 2
を確認できるため、これらの_28
_コアは_2x28=56
_論理コアのように動作できます。
質問1:このCPUs(s): 56
は何を表していますか? CPU(s)
は、少なくとも物理コアコアではないため、仮想/論理コアの数を示していますか?
質問2:この_NUMA node
_はどういう意味ですか?それはソケットを表しますか?
「CPU:56」は論理コアの数を表し、「コアあたりのスレッド」×「ソケットあたりのコア」×「ソケット」に相当します。 1つのソケットは1つの物理CPUパッケージです(マザーボード上の1つのソケットを占有します)。各ソケットは多数の物理コアをホストし、各コアは1つ以上のスレッドを実行できます。あなたの場合、2つのソケットがあり、それぞれに14コアのXeon E5-2690 v4 CPUが含まれています。これは2つのスレッドによるハイパースレッディングをサポートしているため、各コアは2つのスレッドを実行できます。
「NUMAノード」はメモリアーキテクチャを表します。 “ NUMA”は “ non-uniform memory architecture” を表します。システムでは、各ソケットが特定のDIMMスロットに接続されており、各物理CPUパッケージには、RAM全体の一部を処理するメモリコントローラーが含まれています。その結果、すべてのCPUからすべての物理メモリに同等にアクセスできるわけではありません。1つの物理CPUが制御するメモリに直接アクセスできますが、残りのメモリにアクセスするには、他の物理CPUを経由する必要があります。ご使用のシステムでは、論理コア0〜13および28〜41が1つのNUMAノードにあり、残りは他のNUMAノードにあります。つまり、少なくとも典型的なマルチソケットXeonシステムでは、1つのNUMAノードは1つのソケットに相当します。