stream)とは、コンピューティングにおいて並列性を達成するのに使われる技法の一種。MIMD型のマシンは、独立して機能する複数のプロセッサを持つ。任意の時点で、異なるプロセッサは異なる命令を使って異なるデータを処理している。MIMDアーキテクチャは様々な分野で応用されており、CAD/CAM、シミュレーション、モデリング、通信スイッチなどに使われている。MIMD型マシンは、共有メモリ型と分散メモリ型に分類される。この分類は、MIMD型マシンのプロセッサがどのようにメモリにアクセスするかに着目したものである。共有メモリ型マシンは、単純なバスを使ったものや、階層型のバスを使ったものがある。分散メモリ型マシンは、ハイパーキューブ型やメッシュ型の相互接続ネットワークを使うことが多い。共有メモリ型[編集]バス方式[編集]メモリとプロセッサ群がバスに接続されたMIMDマシン。単純な形態では、単一のバスに全てが接続される。バスがボトルネックとなりやすいため、小規模なマシンでよく使われている。対称型マルチプロセッシングの多くはこの方式である。階層型バス方式[編集]バス方式のMIMDマシンを上位のバスで相互接続したMIMDマシン。下位のバス内でのメモリアクセスと、上位のバスを経由したメモリアクセスで、アクセスコストが異なるNUMA型である。NUMAの中でも比較的小規模なマシンに多い。分散メモリ型[編集]各プロセッサにローカルなメモリが個別に配置されたMIMDマシン。データを共有するには、メッセージとしてプロセッサ間でやりとりする必要がある。共有メモリがないため、メモリアクセスの衝突は問題とはならない。多数のプロセッサを1対1に接続するのはコストがかかりすぎるため、直接接続するプロセッサ数を制限するのが一般的である。その場合に直接接続していないプロセッサ間で通信をするとき、間にあってメッセージを転送するプロセッサ数が多いほど転送に時間がかかることになる。そのため、最大転送時間を考慮したネットワーク設計が重要となる。バス方式の共有メモリ型MIMDマシンを最小単位としてネットワークを形成する場合もある。ハイパーキューブ型ネットワーク[編集]超立方体の各頂点にプロセッサとメモリを配置する形態。