1つのプロセッサのSMT部分はスレッド間で共有され、他の部分はスレッド間で複製されます。一方、マルチコアプロセッサは、2つ以上の独立した実行コアを単一のプロセッサパッケージに埋め込みます。
私の質問:さまざまなシナリオでの各アーキテクチャの長所と短所は何ですか。
SMTを使用すると、1つのプロセッサの一部がスレッド間で共有され、他の部分はスレッド間で複製されます。最も重要な共有リソースの1つは、実際の実行エンジンです。このエンジンは、一方のスレッドが使用していないリソースに対して一方のスレッドに対して命令を実行することにより、両方のスレッドで同時に動作します。両方のスレッドが実行されている場合、SMTテクノロジーは文字通り実行パイプラインの命令をインターリーブします。どの命令がいつ挿入されるかは、実行時に使用可能なプロセッサの実行リソースに完全に依存します。さらに、一方のスレッドがディスクから大きなデータファイルを読み取るか、ユーザーがキーボードで入力するのを待つことに縛られている場合、もう一方のスレッドは、最初のスレッドが準備ができるまで、オペレーティングシステムの切り替えタスクなしですべてのプロセッサリソースを引き継ぎます。処理を再開します。この方法では、
SMTテクノロジーは、遅延を隠すことでパフォーマンスを向上させます。基本的に、単一の実行コアは複数のスレッド間で共有されます。したがって、スレッドの実行は並列ではありません。その結果、パフォーマンスの結果は、アプリケーションとハードウェアプラットフォームによって異なります。SMTの長所•一般:システムリソースのより良い使用•マルチプロセッサマシンでのタスクの並列化とパフォーマンスの向上短所•共有リソース(オブジェクト、データ)の同期•「飢餓」:一部のスレッドは不適切な設計で提供されない場合があります
一方、マルチコアプロセッサは、2つ以上の独立した実行コアを単一のプロセッサパッケージに組み込みます。複数の実行コアを提供することにより、命令またはスレッドの各シーケンスは、完全にそれ自体にハードウェア実行環境を持ちます。これにより、各スレッドを真に並列に実行できます。A
デュアルコアプロセッサは、各スレッドの真の並列実行を提供することに注意してください。SMTテクノロジは、マルチコアパフォーマンスを提供しようとはしないことに注意してください。これは、理論的には、デュアルコアシステムのパフォーマンスを100%または2倍向上させることができます。SMTテクノロジは、プログラマがより多くの作業を実行するためにアイドル状態のCPUリソースを使用できる機能です。マルチコアテクノロジーと組み合わせると、SMTテクノロジーは強力な最適化の機会を提供し、システムスループットを大幅に向上させることができます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加