CPUの基本:複数のCPU、コア、ハイパースレッディングの説明

コンピューターの中央処理装置(CPU)は、基本的にプログラムの実行という計算作業を行います。しかし、最新のCPUは、マルチコアやハイパースレッディングなどの機能を提供します。一部のPCは複数のCPUを使用しています。私たちはそれをすべて整理するのを助けるためにここにいます。

関連:CPUクロック速度を使用してコンピューターのパフォーマンスを比較できない理由

パフォーマンスを比較する場合、CPUのクロック速度は以前は十分でした。物事はもはやそれほど単純ではありません。複数のコアまたはハイパースレッディングを提供するCPUは、ハイパースレッディングを備えていない同じ速度のシングルコアCPUよりも大幅にパフォーマンスが向上する可能性があります。また、複数のCPUを搭載したPCには、さらに大きな利点があります。これらの機能はすべて、PCが複数のプロセスを同時に簡単に実行できるように設計されており、マルチタスク時やビデオエンコーダーや最新のゲームなどの強力なアプリの要求の下でパフォーマンスを向上させます。それでは、これらの各機能と、それらがあなたにとって何を意味するのかを見てみましょう。

ハイパースレッディング

ハイパースレッディングは、消費者向けPCに並列計算を導入するIntelの最初の試みでした。 2002年にPentium4HTを搭載したデスクトップCPUでデビューしました。当時のPentium4はCPUコアが1つしかないため、タスクをすばやく切り替えることができたとしても、実際には一度に1つのタスクしか実行できませんでした。マルチタスクのように見えた。ハイパースレッディングはそれを補おうとしました。

ハイパースレッディングを備えた単一の物理CPUコアは、オペレーティングシステムからは2つの論理CPUとして表示されます。CPUはまだシングルCPUなので、ちょっとしたごまかしです。オペレーティングシステムはコアごとに2つのCPUを認識しますが、実際のCPUハードウェアには、コアごとに1セットの実行リソースしかありません。CPUは、コアが多いように見せかけ、独自のロジックを使用してプログラムの実行を高速化します。つまり、オペレーティングシステムは、実際のCPUコアごとに2つのCPUを検出するようにだまされます。

ハイパースレッディングにより、2つの論理CPUコアが物理実行リソースを共有できます。これにより、処理速度が多少向上する可能性があります。一方の仮想CPUが停止して待機している場合、もう一方の仮想CPUは実行リソースを借用できます。ハイパースレッディングはシステムの速度を上げるのに役立ちますが、実際にコアを追加するほど良くはありません。

ありがたいことに、ハイパースレッディングは「ボーナス」になりました。ハイパースレッディングを備えた元のコンシューマープロセッサには、複数のコアを装った単一のコアしかありませんでしたが、最近のIntel CPUには、複数のコアとハイパースレッディングテクノロジーの両方が搭載されています。ハイパースレッディングを備えたデュアルコアCPUは、オペレーティングシステムに対して4つのコアとして表示されますが、ハイパースレッディングを備えたクアッドコアCPUは8つのコアとして表示されます。ハイパースレッディングは追加のコアに代わるものではありませんが、ハイパースレッディングを備えたデュアルコアCPUは、ハイパースレッディングを備えていないデュアルコアCPUよりも優れたパフォーマンスを発揮するはずです。

マルチコア

もともと、CPUはシングルコアでした。つまり、物理CPUには単一の中央処理装置が搭載されていました。パフォーマンスを向上させるために、メーカーは追加の「コア」または中央処理装置を追加します。デュアルコアCPUには2つの中央処理装置があるため、オペレーティングシステムには2つのCPUとして表示されます。たとえば、2つのコアを備えたCPUは、2つの異なるプロセスを同時に実行できます。コンピュータは一度に複数のことを実行できるため、これによりシステムが高速化されます。

ハイパースレッディングとは異なり、ここにはトリックはありません。デュアルコアCPUは、文字通りCPUチップ上に2つの中央処理装置を備えています。クアッドコアCPUには4つの中央処理装置があり、オクタコアCPUには8つの中央処理装置があります。

これにより、物理CPUユニットを小さく保ちながら、パフォーマンスを劇的に向上させることができるため、単一のソケットに収まります。必要なのは、単一のCPUユニットが挿入された単一のCPUソケットだけであり、4つの異なるCPUを備えた4つの異なるCPUソケットではなく、それぞれが独自の電源、冷却、およびその他のハードウェアを必要とします。コアはすべて同じチップ上にあるため、コアがより迅速に通信できるため、遅延が少なくなります。

Windowsのタスクマネージャーはこれをかなりよく示しています。ここでは、たとえば、このシステムに1つの実際のCPU(ソケット)と4つのコアがあることがわかります。ハイパースレッディングにより、各コアはオペレーティングシステムからは2つのCPUのように見えるため、8つの論理プロセッサが表示されます。

複数のCPU

関連:CPUクロック速度を使用してコンピューターのパフォーマンスを比較できない理由

ほとんどのコンピューターにはCPUが1つしかありません。その単一のCPUには、複数のコアまたはハイパースレッディングテクノロジーが搭載されている場合がありますが、マザーボード上の単一のCPUソケットに挿入されている物理CPUユニットは1つだけです。

ハイパースレッディングCPUとマルチコアCPUが登場する前は、CPUを追加することで、コンピューターに処理能力を追加しようとしました。これには、複数のCPUソケットを備えたマザーボードが必要です。マザーボードには、これらのCPUソケットをRAMやその他のリソースに接続するための追加のハードウェアも必要です。この種のセットアップには多くのオーバーヘッドがあります。CPUが相互に通信する必要があり、複数のCPUを搭載したシステムがより多くの電力を消費し、マザーボードがより多くのソケットとハードウェアを必要とする場合、追加の遅延が発生します。

複数のCPUを搭載したシステムは、今日のホームユーザーPCではあまり一般的ではありません。複数のグラフィックカードを備えた高性能のゲーミングデスクトップでさえ、通常は1つのCPUしか搭載していません。スーパーコンピューター、サーバー、および同様のハイエンドシステムの中には、可能な限り多くの計算能力を必要とする複数のCPUシステムがあります。

コンピューターに搭載されているCPUまたはコアの数が多いほど、一度に実行できる処理が増え、ほとんどのタスクのパフォーマンスが向上します。ほとんどのコンピューターには、複数のコアを搭載したCPUが搭載されています。これは、これまでに説明した中で最も効率的なオプションです。最新のスマートフォンやタブレットには、複数のコアを搭載したCPUもあります。Intel CPUは、ハイパースレッディングも備えています。これは一種のボーナスです。大量のCPUパワーを必要とする一部のコンピューターには、複数のCPUが搭載されている場合がありますが、思ったよりもはるかに効率が悪くなります。

画像クレジット:Flickrのlungstruck、FlickrのMike Babcock、FlickrのDeclanTM