マルチプロセッサー
読み:マルチプロセッサー
外語:MP: multi-processor
分散コンピューティング
のアーキテクチャーの一つ。
目次
概要
概念
呼称
特徴
準備
対称性
マルチスレッド
共有バス
概要
概念
複数の
プロセッサー
が、
メモリー
を共有するか、または高速な相互接続を行なうことで、互いが強固に連結されたアーキテクチャーのこと。
パソコンでは一般に2〜4個、大規模なコンピューターでは数十から数百個、時に数千〜数万のプロセッサーを搭載する。そして個々の仕事を複数のプロセッサーで分担して並行処理することで、処理速度の向上を実現する。
近年では、複数のプロセッサーコアを密に結合して一つのパッケージに封止するなどした「
マルチコア
」のプロセッサーも多く使われている。
呼称
マルチというだけでなく、その個数に応じた呼びわけも行なわれている。
デュアルプロセッサー
(2個)
クアッドプロセッサー (4個)
オクタプロセッサー (8個)
特徴
準備
実現のためには、プロセッサー自身、チップセット等の周辺機器や回路の対応のほか、マルチプロセッサーに対応した
オペレーティングシステム
(OS)が必要になる。
通常は、処理は
スレッド
に分割し、
マルチスレッドオペレーティングシステム
を用いて
マルチスレッド処理
を行なうことになる。
対称性
全てのプロセッサーの仕事が対称な場合と、そうでない場合がある。
どのプロセッサーも対等で対称的なものを対称型(SMP)といい、処理装置ごとに役割分担が決まっていて非対称的なものを非対称型(AMP)という。
対称型マルチプロセッシング
(SMP)
非対称型マルチプロセッシング
(AMPまたはASMP)
マルチスレッド
マルチスレッド
の処理を書く場合、必ずマルチプロセッサーのマシンで動作テストをするべきである。
なぜなら、シングルプロセッサーでは問題が出ないが、マルチプロセッサーでは問題が生じることが多々あるためである。特に排他制御まわりは、この問題をよく生じさせる部位である。
大昔は、マルチプロセッサーのマシンは高価で、高嶺の花であったが、最近は一般のパーソナルコンピューター用のCPUでも
マルチコア
が一般化し、テストをしやすい環境になった。
共有バス
多くの場合、複数のプロセッサーで、同じバス(アドレスバス・データバス)を共有する共有バス方式のマルチプロセッサーシステムが使われる。
共有バス方式の場合、バスの混雑が問題となる。そこで共有バス方式では、個々のプロセッサーにキャッシュを持たせて共有バスのアクセス頻度を減らすようにしている。しかしキャッシュを使うと、同一番地に対する記憶部が複数箇所に分散することになり、データの一貫性を保つことができなくなる問題がある。
そこで、共有バスで動作する通信プロトコルとしてキャッシュを更新するためのプロトコルが使用されることもある。
再検索