web-dev-qa-db-ja.com

CPUコアについて正しい情報はどれですか?

マシン上の実際のCPU数について質問があります。異なる方法で異なる結果が得られます...

htopは4つのコアが動作していることを示します

lscpu | grep CPU\(s\):は4を示します

cat /proc/cpuinfo | grep processorは4を示します

cat /proc/cpuinfo | grep "cpu cores" | uniqは2を示します

sensors | grep Coreは2を示します

私は少し迷っています...

編集:

cat /proc/cpuinfo | grep 'model name'
model name  : Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz
2
kurokirasama

これは、今日のCPUのビルド方法に関係しています。

独自のバスでデータを送信する2つのコアを含む1つのハードウェアCPUがあります。各コアには、独自に計算できる2つのいわゆるスレッドがありますが、データを送信するためにバスを共有します。これはマルチスレッドと呼ばれ、最近ではかなり一般的です。

しかし、Linuxはこれを示していません。代わりに、各スレッドはCPUコアと見なされます。したがって、6コアまたは8コアのサーバーがある場合、たとえばhtopは12または16個のシングルコアを表示します。

あなたの場合、合計2つのコアと4つのスレッドを持つCPUがあります。

コマンドをもう一度見てください(uniqなし)。この情報が4回表示されるはずです。

cat /proc/cpuinfo | grep "cpu cores"
1
s1mmel