おいも貴婦人ブログ

生物系博士課程満期退学をしたAIエンジニアのブログ。

フリンの分類[Wiki]

コンピュータアーキテクチャの分類法である。

Single Instruction, Single Data stream (SISD)

命令にもデータにも並列性のない逐次的なコンピュータ。SISDアーキテクチャの例としては、いわゆるシングルプロセッサのマシンが挙げられ、旧式のパーソナルコンピュータや古いメインフレームがある。

Single Instruction, Multiple Data streams (SIMD)

命令列は1つだが、それを複数のデータストリームに適用する形態のコンピュータ。画像、音声、動画などを扱うマルチメディア処理で多用されている。例えば、ベクトル計算機GPUMMX、SSE、3DNow!、SPEがある。

Multiple Instruction, Single Data stream (MISD)

命令列が複数あり、それを1つのデータストリームに適用する形態のコンピュータ。あまり一般的ではないが、フォールトトレラント設計のシステムで冗長性を確保するために使われる。理論的にMISD型で提案されたコンピュータもいくつかあったが、高価である割に性能はあまり高くなく、大量生産されるには至っていない。

Multiple Instruction, Multiple Data streams (MIMD)

複数のプロセッサが同時並行的にそれぞれ異なるデータを異なる命令で処理するコンピュータ。

さらなる分類

Single Program, Multiple Data streams (SPMD)

複数のプロセッサが同時並行的に同じプログラムを実行する。ただし、SIMDやMISD(ロックステップ実行)のように同じ箇所ではなく、それぞれ別の箇所を実行し、別々のデータを使用する。'Single Process, multiple data' とも呼ばれ、並列プログラミングでは最も一般的とされる[7]。

Multiple Program Multiple Data (MPMD)

複数のプロセッサが同時並行的に少なくとも2つ以上の独立したプログラム群を実行する。これは例えばマルチプロセッサ複数のプロセスを同時に実行するという意味ではない。その場合は単にハードウェアがマルチプロセッサになっているだけで、それをオペレーティングシステム複数のコンピュータであるかのように見せているだけである。ここでいうのは、1つのノードを「ホスト」または「マネージャ」とし、そこで第一のプログラムを実行して、そのプログラムが他のノード群に第二のプログラムとデータを分配して実行されるような形態である。そのようにして各ノードが実行した結果をマネージャノードに返す。

参考URL:http://ja.wikipedia.org/wiki/%E3%83%95%E3%83%AA%E3%83%B3%E3%81%AE%E5%88%86%E9%A1%9E