このエントリーをはてなブックマークに追加


CPUコア数を調べる

Linuxが稼働しているPCのコア数を調べる方法を以下に記します。


プロセッサ数を調べる

/proc/cpuinfoの情報をgrepを使って調べてみます。

/proc/cpuinfoにはプロセッサの情報が格納されていますので、以下に記述したコマンド群でプロセッサ数を表示しました。
尚、cat /proc/cpuinfo コマンドでCPUの情報をより詳細に確認することができます。

実行例

2種類のIntel CPUで動作確認をしました。

  1. Intel(R) Xeon(R) CPU E5504
  2. Intel(R) Pentium(R) 4 CPU 3.20GHz

Intel(R) Xeon(R) CPU E5504 (ハイパー・スレッディング・テクノロジーは非対応)

Intel(R) Xeon(R) CPU E5504で確認した手順です。

$ cat /proc/cpuinfo | grep processor
processor       : 0
processor       : 1
processor       : 2
processor       : 3

プロセッサが4つあることがわかります。

次にphysical idを調べてみます。

$ cat /proc/cpuinfo | grep "physical id"
physical id     : 0
physical id     : 0
physical id     : 0
physical id     : 0

物理的なCPUは1つだということがわかります。(すべて同一idのため、PCには1つの物理CPUが搭載されていることがわかります。)

次にcpu coresを調べてみます。

$ cat /proc/cpuinfo | grep "cpu cores"
cpu cores       : 4
cpu cores       : 4
cpu cores       : 4
cpu cores       : 4

core数が4つであることが確認できました。

Intel(R) Xeon(R) CPU E5504はHT(ハイパー・スレッディング・テクノロジー)が非対応なので、PCには1つの物理CPUが搭載されており(physical idで判別)、この物理CPUには4コアであること(cpu coresで判別)がわかります。

Intel(R) Pentium(R) 4 CPU 3.20GHz (ハイパー・スレッディング・テクノロジーは対応)

Intel(R) Pentium(R) 4 CPU 3.20GHzで確認した手順です。

$ cat /proc/cpuinfo | grep processor
processor       : 0
processor       : 1

プロセッサが2つあることがわかります。
(以下の手順をすると、この2つのプロセッサは論理プロセッサ数だと判別できます。)

次にphysical idを調べてみます。

$ cat /proc/cpuinfo | grep "physical id"
physical id     : 0
physical id     : 0

物理的なCPUは1つだということがわかります。(すべて同一idのため、PCには1つの物理CPUが搭載されていることがわかります。)

次にcpu coresを調べてみます。

$ cat /proc/cpuinfo | grep "cpu cores"
cpu cores       : 1
cpu cores       : 1

core数が1つであることが確認できました。

Intel(R) Pentium(R) 4 CPU 3.20GHzはHT(ハイパー・スレッディング・テクノロジー)が対応なので、PCには1つの物理CPUが搭載されており(physical idで判別)、この物理CPUには1コアであること(cpu coresで判別)がわかります。
また、processor数が2つなので(cpu coresは1つ)、HTにより2つのCPUに見ているのが確認できます。

関連資料



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-03-20 (金) 22:28:30