実際の並列性とは、複数の命令またはタスクの同時実行を指します 複数の処理ユニット(コア、プロセッサ、または特殊なハードウェア)。これは、指示が本当に同時に実行され、本物のスピードアップにつながることを意味します。
重要な特性:
* 真の並行性: さまざまなタスクからの指示が同時に実行されます。
* 複数の処理単位: 複数の物理プロセッサまたはコアが必要です。
* より速い実行: 並列コンポーネントに分割できるタスクの重要なスピードアップを実現します。
例: マルチコアプロセッサで複雑なシミュレーションを実行します。ここでは、シミュレーションのさまざまな部分が異なるコアで同時に実行されます。
擬似平行
シミュレートされた並列性としても知られる偽の平行性 、並列実行の幻想を伴います ただし、実際には複数のタスクを同時に実行しません。代わりに、次のようなテクニックを使用します。
* 時間帯: 異なるタスク間で迅速に切り替えて、並列実行の外観を与えます。
* インターリーブ: さまざまなタスクから手順を交互に実行します。
* パイプライン: 指示をより小さなステップに分解し、パイプラインで処理し、実行を重複させます。
重要な特性:
* 真の並行性はありません: 実際にいつでも実行されているタスクは1つだけです。
* 単一の処理ユニット: 単一のプロセッサまたはコアで実現できます。
* 限定スピードアップ: スピードアップは、タスク間の切り替えまたはパイプラインのオーバーヘッドの切り替えに費やされた時間によって制限されます。
例: マルチタスクオペレーティングシステムを実行するシングルコアプロセッサ。複数のプログラムが同時に実行されているように見えますが、実際には時間式です。
実際の平行と擬似平行性の違い:
|機能|本当の並列性|擬似平行|
| ----------------- | --------------------- | --------------------- |
|並行性| true |シミュレーション|
|処理ユニット|複数|シングル|
|スピードアップ|重要な|限定|
|例|マルチコアCPU、GPU |時間帯、パイプライン|
要約:
* 実際の並列性 複数の処理ユニットを利用することにより、真の並行性と大幅に高速な実行を提供します。
* 擬似平行 タイムスライスやパイプライニングなどの手法を使用して並列性をシミュレートしますが、真の同時性を達成せず、制限されたスピードアップを提供します。
