Corei7 Intel プロセッサ (CPU 名: Intel(R) Core(TM) i7-4500U CPU @ 1.80GHz、CPU タイプ: Intel Core Haswell プロセッサ) を持っています。CPUID コマンドの出力は、それぞれ 2 つのコアを持つ 4 つの CPU を示しているのではないかと思います。私は本当に4つのCPUを持っていますか? 出力には 4 つの cpus (cpu0 から cpu3) が含まれます
(multi-processing synth): multi-core (c=2), hyper-threaded (t=2)
。これは、ハードウェア パフォーマンス カウンターを使用してアプリをテストするためです。ただし、監視およびプロファイリングする必要があるコアの数について混乱しています。
2 に答える
まず、前述のように、システムはハイパースレッディングを備えたデュアル コアです (ハイパースレッディングとは、各コアが 2 つの同時ハードウェア スレッドから実行できることを意味します)。したがって、「物理 CPU」が 1 つしかない場合でも、OS は 4 つの「論理 CPU」を認識します。以下で詳しく読む:
Linux を使用している場合は、次のように cat または less を使用して /proc/cpuinfo を確認します。
cat /proc/cpuinfo
それはあなたが知る必要があるすべての情報をリストします. ただし、質問に答えて情報を理解するために。「論理CPU」と「物理CPU」には違いがあることを知っておく必要があります。物理 CPU は、システムにインストールされている、たとえば Intel 製の実際のハードウェアです。論理 CPU は OS によって認識されるものであり、基本的に「ハードウェア スレッド」または 1 つのプロセッサ コアを指します。したがって、4 つのコアを備えた 1 つの物理 CPU があり、各コアが 1 つのスレッド (ハードウェア スレッド) をサポートしているとします。OS は 4 つの CPU を認識し、それらは /proc/cpuinfo にリストされ、「プロセッサ」番号は異なりますが、同じです。それらはすべて同じ物理プロセッサに属しているためです。別の例として、上記のコアのそれぞれが 2 つのスレッドをサポートしているとします (ここでも、ハードウェア スレッドであり、ソフトウェア スレッドではありません)。次に、OS は 8 つの CPU を認識します。2 つの物理 CPU と上記のすべてを備えたデュアルソケット (マルチノード) サーバーがある場合、OS は 16 個の CPU を認識します。それらの 8 つのそれぞれが同じ「物理 ID」を持ちます。
お使いのシステムに関する情報はこちら: http://ark.intel.com/products/75460/Intel-Core-i7-4500U-Processor-4M-Cache-up-to-3_00-GHz