MultiCoreとMultiProcessorの違いは何ですか?[複製]


回答:


28

CPU、または中央処理装置は、通常、プロセッサと呼ばれるものです。プロセッサには、命令およびデータ用の1つまたは複数のメモリキャッシュ、命令デコーダ、算術演算または論理演算を実行するためのさまざまなタイプの実行ユニットなど、多くの個別の部分が含まれています。

マルチプロセッサシステムには、このようなCPUが複数含まれているため、それらを並列に動作させることができます。これは、SMP、または対称型マルチプロセッシングと呼ばれます。

マルチコア CPUは一つのCPU上で複数の実行コアを有します。現在、これは正確なアーキテクチャによって異なることを意味しますが、基本的にはCPUのコンポーネントの特定のサブセットが複製されるため、複数の「コア」が別々の操作で並行して動作できることを意味します。これは、CMP、チップレベルのマルチプロセッシングと呼ばれます。

たとえば、マルチコアプロセッサには、コアごとに個別のL1キャッシュと実行ユニットがあり、プロセッサ全体に共有L2キャッシュがあります。つまり、プロセッサには低速キャッシュの大きなプールが1つありますが、複数のコアごとに個別の高速メモリと演算/論理ユニットがあります。これにより、各コアが他のコアと同時に操作を実行できます。

SMT、同時マルチスレッドと呼ばれる、さらに別の部門があります。これは、プロセッサまたはコアのコンポーネントのさらに小さなサブセットが複製される場所です。たとえば、SMTコアには、スレッドスケジューリングリソースが重複している可能性があります。そのため、コアは、実行ユニットが1セットしかない場合でも、オペレーティングシステムからは2つの別個の「プロセッサ」のように見えます。これの一般的な実装の1つは、Intelのハイパースレッディングです。

したがって、マルチプロセッサ、マルチコア、マルチスレッドシステムを使用できます。2つのクアッドコア、ハイパースレッドプロセッサのようなものは、オペレーティングシステムの観点から2x4x2 = 16の論理プロセッサを提供します。

さまざまなワークロードは、さまざまなセットアップから恩恵を受けます。ほぼ単一の目的のマシンで実行されるシングルスレッドワークロードは、非常に高速なシングルコア/ CPUシステムの恩恵を受けます。SMP / CMP / SMTセットアップなどの高度に並列化されたシステムの恩恵を受けるワークロードには、同時に作業できる小さなパーツが多数あるワークロード、またはデスクトップを使用するなど、一度に多くのことに使用されるシステムが含まれます。ウェブを閲覧したり、Flashゲームをプレイしたり、ビデオを一度に視聴したりできます。一般に、ほとんどのシングルCPU /コアRAW速度は、ほとんどのモデルで共通のワークロードに対して「十分に高速」であるため、最近のハードウェアはますます高度な並列アーキテクチャに向かっています。


熱、セットアップはどうですか?多くのプロセッサを1つのCPUハウジングに詰め込んだ場合、熱は1つの「スポット」に非常に集中し、より良い冷却設備が必要になりますか?これが真実なら、なぜメーカーはコストだけのためにその設計を続けるのでしょうか?または、分離コアを使用するときに克服すべき他の問題はありますか?
Codebeat

18

誰もが十分な説明をしました。それでもわからない場合。これを見てください:

代替テキスト


2つのクエリはあなたが彼女に置いた絵にあります1)APICとは2)マルチコアとマルチプロセッサのセルの最後の行の図(グリッドの最後の行の最初と3番目の列の2つの図)はALUの周囲の破線/実線/正方形の境界を除き、同じです。どういう意味ですか?
ゴールデン平均

2
@goldenmean:1. APICはen.wikipedia.org/wiki/…であり、他のデバイスからの割り込みを受信して​​動作します。OperatingSystemsの内部動作に関する知識があればさらに説明できます2)実線は、最初の行に示すように2つの異なるチップ/ダイであり、破線は両方が単一のチップまたはダイ上にあることを示します

これは「この写真を見て、まだ十分な説明をしてくれた人を理解していないなら」と言うべきです
テオマンshipahi

2

マルチコアプロセッサには、1つの物理パッケージに2つ以上のコアが含まれています。

マルチプロセッサシステムは、複数の物理プロセッサを含むシステムです。これらのプロセッサのそれぞれに、複数のコアを含めることができます(WoodEの回答どおり)。

彼らは比較方法と同様に:
マルチコアプロセッサ内のコアの各々は、一般的に遅い(生速度で)高速シングルコアプロセッサよりもあります。また、そのプロセッサのすべてのコアは同じシステムバスとメインメモリを共有します。ただし、ほとんどの日常のタスクではこれは目立った問題ではなく、ほとんどのユーザーにとっては、より簡単なタスクを一度に実行できるため、システムは速く感じるでしょう。

マルチプロセッサシステムでは、複数の高強度タスクが実行されている場合にパフォーマンスが向上します。マザーボードによっては、各プロセッサに専用のバスやメインメモリがあり、それらのタスクで各プロセッサの全機能を使用できるためです。

マルチプロセッサマルチコアシステムは、それぞれの長所と短所の融合になります。

また、より多くのマルチスレッドプログラム(一度に複数のタスクを処理するようにプロセッサに指示できるプログラム)が開発されると、マルチコアプロセッサの欠点が減少します。


2

デスクトップ/ラップトップの観点から見ると、マルチプロセッサはマシンにさらに2つのCPUを備えています。

マルチコアは、同じチップ上に複数の処理コア、基本的にはシリコンの1ビットに複数のCPUを搭載しています。マルチコアと見なされるためには、各コアは本質的にフルCPUである必要があります-最も初期のPentiumチップでも複数の整数計算ユニット(より効率的なパイプライン化が可能)があるという事実は考慮されません。

もちろん、同じマシンに複数のマルチコアプロセッサを搭載したマルチプロセッサマルチコア配置にすることもできます。

考慮すべき多くの変数があるため、賛否両論は複雑になる可能性がありますが、いくつかの顕著な違いは次のとおりです。

  • 冷却:2コアCPUは多くの場合、同じ仕様の2つの個別のシングルコアユニットよりも少ない廃熱を生成し、一般的に安価になるヒートシンクとファンを1つだけ必要とします2、ハイテク冷却ソリューションが必要な場合があります)
  • キャッシュローカリティによる速度:同じチップ上にあるため、コアが外部メモリバス上でより長い距離を調整する必要がないため、L2(またはL3)キャッシュの一貫性/共有をより効率的にすることができます。
  • シンプルさによるコストの違い:マルチコアソリューションは、マザーボードなどに複数のソケットを必要としません。

1

基本的に、マルチコアプロセッサは、マルチプロセッサシステムがマザーボード上に複数のプロセッサを含むマルチコア(たとえば、4コアには4つのコア)を持つシングルプロセッサです(順番にマルチコアも可能)。

それぞれの長所と短所になると、もう少し複雑になります。

編集:スペル修正。



1

私の知る限り、コアはプロセッサの内部にあるため、マルチコアは単一の強力なプロセッサを意味し、マルチプロセッサはマザーボード上の複数のプロセッサを意味します(発熱の問題を軽減するための数字、または共有ペイロードでもパフォーマンスが向上する可能性があります)確かではありませんが、読んだものから私はそれが正確であると考えました

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.