並列処理
CPUの性能向上には様々なアプローチがあるが、単独のCPU内で果たすことのできる性能向上には限界がある。
複数のCPUを強調させて動作を行う並列処理が重要である。
このようにコンピューターシステム上に複数のCPUを搭載するのをマルチプロセッサシステムという
- 対称型マルチプロセッサ(SMP:Symmertrical MUltiple Processor)
全てのプロセッサを同等に扱って処理を並列化する方法 - 非対称型マルチプロセッサ(AMP:Asymmertical Multiple Processor)
それぞれのプロセッサに対して処理を分散させる方式
マルチコアプロセッサ
ひとつのCPUパッケージ内に複数のコア(CPUの中核で実際に処理を実行するところ)を持たせたもの
近年では広く用いられている
フリンの分類
名前 | 正式名称 | 説明 |
---|---|---|
SSID | Single Instruction stream/Single Date stream | 1つの命令で1つのデータを処理する |
SIMD | Single Instruction stream/Multiple Date stream | 1つの命令で複数のデータを処理する。グラフィック処理用のプロセッシングユニットであるGPUの多くはこの方式 |
MISD | Multiple Instruction stream/Single Date stream | 複数の命令で1つのデータを処理する |
MIMD | Multiple Instruction stream/Multiple Date stream | 複数の命令で複数のデータを処理する。マルチプロセッサを採用する一般的なコンピューターはこの方式である |
マルチプロセッサと主記憶装置の関係
複数のCPUが協同動作を行うにあたり、主記憶装置との関係は重要な問題。
密結合マルチプロセッサ
複数のプロセッサが主記憶装置を共有し、それを単一のOSが制御する方式である。
共有した主記憶装置へのアクセスが競合した結果、処理効率が低下する。
疎結合マルチプロセッサ
複数のプロセッサに対して独立した主記憶装置を割り当てる方式である。
各プロセッサ毎にOSが必要となる。
アムダールの法則
プロセッサの数を増やしても単純にシステムは高速化しない
複数のプロセッサを用いてどれほど高速化できるのか理論上の限界値を求める公式がアムダールの方式という