はしくれSEめも

SEに必要情報をめも程度に残していこうと思っています。

【CPU数の確認方法】物理CPU、CPUコア、論理CPU

f:id:coogi-se:20210805001038j:plain

環境

  1. Red Hat Enterprise Linux 4
  2. Red Hat Enterprise Linux 5
  3. Red Hat Enterprise Linux 6
  4. Red Hat Enterprise Linux 7

物理 CPU の数

以下のコマンドを実行すると、システム上のアクティブな物理プロセッサーの数が表示されます。
例えば、アクティブな物理プロセッサーが 2 つある場合は、その 1 つがシステムシャーシを開き、2 つの物理プロセッサーを手動で削除できます。

$ grep physical.id /proc/cpuinfo | sort -u | wc -l
2

CPU ごとのコアの数

マルチコアプロセッサーを持つシステムで以下のコマンドを実行すると、1 つの物理プロセッサーに CPU コアがいくつあるかが報告されます (ごく稀に報告されない場合もあります)。
例えば、物理プロセッサーの CPU コアが 4 つで物理 CPU が 2 つの場合は、2 つの物理プロセッサーのそれぞれが 4 つの CPU コアを持つため全部で 8 コアになります。

$ grep cpu.cores /proc/cpuinfo | sort -u
cpu cores :4

論理プロセッサーの数

このコマンドを実行すると、Linux カーネルが表示する「論理」プロセッサーの総数が表示されます。
通常、この数字は 3 つの中で一番大事なものとなります。これは有効なプロセッサーの数です。
オペレーティングシステムにとって、これは指定したマイクロ秒で動作できる CPU の数になります。
例1:上述のシナリオでは、以下に示される数は 8 ではなく 16 になります。
例2:このコマンドが示す結果が CPU コアの総数と異なる場合は、CPU でハイパースレッド処理が有効になっていて、各コア (この例では 2 つの使用可能な「スレッド」) に分配されるのが原因となります。

$ grep processor /proc/cpuinfo | wc -l
16