最初に定義された一貫性モデルは、レスリー・ランポートの逐次一貫性モデルである。逐次一貫性とは、並列プログラムを並列実行したときの結果と、それと等価な逐次プログラムの結果が同じという特性である。プログラムが逐次一貫性を持つとは、「…任意の実行の結果が、それを全プロセッサが逐次的順序で実行された場合と同じであり、その順序がプログラム内で指定された順序と同じである」ことを意味する。
フリンの分類.
デイビッド・パターソンとジョン・ヘネシーの著書には「もちろん一部のマシンはこれらの混成であるが、単純で分かりやすく、とりあえずの近似としては最適であるが故にこの分類が今も使われている」とある。
並列性の分類.
ビットレベルの並列性.
命令レベルの並列性.
 
アウト・オブ・オーダー実行と命令レベルの並列性を実装する技法としては、スコアボードやトマスロのアルゴリズム（スコアボードと似ているがレジスタ・リネーミングを利用）が一般的である。
データ並列性.
データ並列性はプログラムのループが本質的に備えている並列性であり、ループの各周回が各ノードで並列に処理されるようデータを配布する部分が中心となる。並列化されるループは、大きなデータ構造の各要素について似たような処理を行うものである。科学技術計算にはデータ並列性があることが多い。
問題が大きくなるほど、可能なデータ並列性も多くなる傾向がある。
タスク並列性.
タスク並列性は、「同じまたは異なるデータ群に関する全く異なる計算は並列に実行可能である」という並列プログラムの特性である。データ並列性がほぼ同じ計算を並列に実行するのとは対照的である。問題が大きくなっても、それに比例してタスク並列性が高くなることはない。
ハードウェア.
メモリと通信.
プロセッサ同士またはプロセッサとメモリの通信のハードウェア実装方式は様々であり、マルチポート型の共有メモリ、クロスバースイッチ、共有バス、スター型、リング型、ツリー型、ハイパーキューブ型、ファット・ハイパーキューブ型（ハイパーキューブの頂点に複数のノードが接続される形態）、メッシュ型などの様々なネットワーク構成のインターコネクト・ネットワークがある。