マルチプロセッサシステムは「複数のプロセッサを備えたシステム」と定義され、より正確には「並列処理を可能にするために相互にリンクされた多数の中央処理装置」です。[1] [2] [3]
マルチプロセッサの主な目的は、システムの実行速度を向上させることです。その他の目的は、フォールトトレランスとアプリケーションのマッチングです。[4]
「マルチプロセッサ」という用語は、「マルチプロセッシング」という用語と混同されることがあります。マルチプロセッシングは、2つ以上のプロセッサが連携して複数のプログラムを同時に実行する処理の一種ですが、マルチプロセッサは、マルチプロセッシングを可能にするハードウェアアーキテクチャを指します。[5]
マルチプロセッサ システムは、プロセッサ メモリ アクセスの処理方法と、システム プロセッサが単一のタイプか複数のタイプかによって分類されます。
マルチプロセッサシステムの種類
マルチプロセッサ システムには多くの種類があります。
- 疎結合マルチプロセッサシステム
- 密結合マルチプロセッサシステム
- 同種マルチプロセッサシステム
- 異機種マルチプロセッサシステム
- 共有メモリマルチプロセッサシステム
- 分散メモリマルチプロセッサシステム
- ユニフォームメモリアクセス(UMA)システム
- cc-NUMA システム
- ハイブリッド システム - グローバル データ用の共有システム メモリとローカル データ用のローカル メモリ
疎結合(分散メモリ)マルチプロセッサシステム

疎結合マルチプロセッサ システムでは、各プロセッサに独自のローカル メモリ、入出力 (I/O)チャネル、およびオペレーティング システムがあります。プロセッサは、「メッセージ パッシング」と呼ばれる手法でメッセージを送信し、高速通信ネットワークを介してデータを交換します。疎結合マルチプロセッサ システムは、プロセッサが物理メモリを共有せず、個別の I/O チャネルを持つため、分散メモリ システムとも呼ばれます。
システム特性
- これらのシステムは、複数データに対する複数命令 (MIMD) プログラミングを実行できます。
- このタイプのアーキテクチャでは並列処理が可能になります。
- 分散メモリは拡張性が非常に高いです。
密結合(共有メモリ)マルチプロセッサシステム
プロセッサに密接に接続された共有メモリを備えたマルチプロセッサ システム。
対称型マルチプロセッシング システムは、2 つ以上の同種のプロセッサを備えた 単一のオペレーティング システムで動作する、メイン メモリ (MM) と呼ばれる集中型の共有メモリを備えたシステムです。
システムには 2 つのタイプがあります。
- ユニフォームメモリアクセス(UMA)システム
- NUMA システム
ユニフォームメモリアクセス(UMA)システム
- 異機種マルチプロセッシングシステム
- 対称型マルチプロセッシングシステム (SMP)
異機種マルチプロセッサシステム
異種マルチプロセッシング システムには、中央処理装置 (CPU)、グラフィックス処理装置 (GPU)、デジタル信号プロセッサ (DSP)、または任意のタイプの特定用途向け集積回路 (ASIC) など、同種ではない複数の処理装置が含まれます。システム アーキテクチャにより、グラフィックス プロセッサなどのアクセラレータがシステムの CPU と同じ処理レベルで動作できるようになります。
対称型マルチプロセッサシステム

2 つ以上の同種のプロセッサと集中化された共有メイン メモリを備え、 単一の OS (オペレーティング システム) で動作するシステム。
対称型マルチプロセッサ システム (SMP) は、集中化された共有メイン メモリを備えた単一の OS で実行される同種のプロセッサのプールを備えたシステムです。各プロセッサは、異なるプログラムを実行し、異なるデータ セットで作業し、システム バス、クロスバー、またはこの 2 つの組み合わせ、あるいはアドレス バスとデータ クロスバーを使用して接続された共通リソース (メモリ、I/O デバイス、割り込みシステムなど) を共有できます。
各プロセッサには、プロセッサとメイン メモリ間のブリッジとして機能する独自のキャッシュ メモリがあります。キャッシュの機能は、メイン メモリのデータ アクセスの必要性を軽減し、システム バスのトラフィックを減らすことです。
共有メモリを使用すると、均一なメモリ アクセス時間 (UMA) が可能になります。
cc-NUMA システム


SMP システムのスケーラビリティには限界があることが知られています。この限界を克服するために、通常は「cc-NUMA」(キャッシュ コヒーレンシ - 非均一メモリ アクセス) と呼ばれるアーキテクチャが使用されます。cc-NUMA システムの主な特徴は、各ノードに分散された共有グローバル メモリを持つことです。ただし、プロセッサがリモート コンポーネント サブシステム (「ノード」) のメモリに実際に「アクセス」する速度は、ローカル メモリ アクセスに比べて遅く、これがメモリ アクセスが「非均一」である理由です。
cc-NUMA システムは、SMP システムのクラスターです。各システムは「ノード」と呼ばれ、単一のプロセッサ、マルチコア プロセッサ、または 2 つの組み合わせ、1 つまたは複数のアーキテクチャを持つことができます。これらのシステムは、高速「接続ネットワーク」を介して接続されます。この「接続ネットワーク」は、「リンク」になる可能性があり、単一または二重の逆リング、マルチリング、ポイントツーポイント接続、[6] [7]またはこれらの組み合わせ ( IBM Power Systemsなど[6] [8] )、バス相互接続 (NUMAq など[9] )、「クロスバー」、「セグメント化バス」( HoneywellのNUMA Bull HN ISI [10] ) 、「メッシュ ルーター」などです。
cc-NUMAは「分散共有メモリ」(DSM)アーキテクチャとも呼ばれます。[11]
ローカル メモリとリモート メモリ間のアクセス時間の違いは、使用される接続ネットワークの種類によっても桁違いになります (セグメント バス、クロスバー、ポイントツーポイント相互接続では高速、シリアル リング接続では低速)。
相互接続の例



この制限を克服するために、通常は大規模なリモート キャッシュ ( リモート キャッシュを参照) が使用されます。このソリューションにより、cc-NUMA システムは大規模な SMP システムに非常に近くなります。
密結合アーキテクチャと疎結合アーキテクチャ
両方のアーキテクチャにはトレードオフがあり、次のようにまとめることができます。
- 疎結合アーキテクチャは、個々のプロセッサのパフォーマンスが高いという特徴がありますが、プロセッサ間の負荷をリアルタイムで簡単に分散させることはできません。
- 密結合アーキテクチャは、プロセッサ間の負荷分散と分散が容易ですが、1 つ以上のバスを介して共通リソースを共有することによるボトルネックが発生します。
グローバルデータ乗算機能を備えたマルチプロセッサシステム
前の 2 つのアーキテクチャの中間のアプローチは、各プロセッサに共通リソースとローカル メモリ (LM) などのローカル リソースを持つことです。
共通リソースはシステム バスを介してすべてのプロセッサからアクセスできますが、ローカル リソースはローカル プロセッサからのみアクセスできます。この観点からは、キャッシュ メモリはローカル メモリとして見ることができます。
このシステム(F. Zulian [12]が特許を取得)は、DPX/2 300 Unixベースシステム(Bull Hn Information Systems Italia(旧Honeywell))[13] [14]で使用されており、密結合システムと疎結合システムを組み合わせたもので、これら2つのアーキテクチャのすべての進歩を活用しています。
ローカル メモリは、グローバル データ (GD) とローカル データ (LD) の 2 つのセクターに分かれています。
このアーキテクチャの基本的な概念は、すべてのプロセッサがアクセスできる変更可能な情報であるグローバル データを持つことです。この情報は複製され、各プロセッサの各ローカル メモリに保存されます。
ローカル メモリでグローバル データが変更されるたびに、グローバル データの一貫性を維持するために、ハードウェア書き込みブロードキャストがシステム バスを介して他のすべてのローカル メモリに送信されます。したがって、各プロセッサはシステム バスを介さずに、独自のローカル メモリにアクセスしてグローバル データを読み取ることができます。システム バス アクセスは、ローカル メモリでグローバル データが変更され、他のローカル メモリに保存されているこのデータのコピーを更新する場合にのみ必要です。
ローカルデータはメッセージパッシングを介して疎結合システムで交換できる


参考文献
- ^ 「マルチプロセッサの定義と意味 - コリンズ英語辞典」www.collinsdictionary.com。
- ^ 「データ」(PDF)。www.cs.vu.nl。
- ^ 「マルチプロセッサ – オックスフォード辞書による英語でのマルチプロセッサの定義」。オックスフォード辞書 - 英語。2018年11月4日時点のオリジナルよりアーカイブ。
- ^ 「マルチプロセッサとは何か? - Techopedia からの定義」Techopedia.com。
- ^ 「マルチプロセッサ辞書の定義 - マルチプロセッサの定義」www.yourdictionary.com。
- ^ ab AMD Opteron 共有メモリ MP システム – http://www.cse.wustl.edu/~roger/569M.s09/28_AMD_Hammer_MP_HC_v8.pdf
- ^ Intel® QuickPath インターコネクトの紹介 – http://www.intel.ie/content/dam/doc/white-paper/quick-path-interconnect-introduction-paper.pdf
- ^ 「IBM POWER Systems の概要」. computing.llnl.gov .
- ^ SourceForge – http://lse.sourceforge.net/numa/faq/system_descriptions.html
- ^ Bull HN F. Zulian – A. Zulian 特許 – セグメント構造のバスを備えたコンピュータ システム – http://www.freepatentsonline.com/6314484.html
- ^ NUMA アーキテクチャ – http://www.dba-oracle.com/real_application_clusters_rac_grid/numa.html
- ^ 「グローバルデータ乗算機能を備えたマルチプロセッサシステム」。
- ^ 「UNIX と Bull」www.feb-patrimoine.com。
- ^ 「Bull DPX」。www.feb-patrimoine.com。
