スーパースカラー
最も単純なプロセッサアーキテクチャをスカラープロセッサと呼ぶ。スカラープロセッサでは、各命令で1つか2つのデータを一度に扱う。一方、ベクタープロセッサでは同時に多数のデータを扱う。これは数学におけるスカラーとベクトルの違いに似ている。スーパースカラープロセッサはこれらの中間と言える。各命令は1つのデータを扱うが、CPU内に複数の実行ユニットがあるため、それぞれ別のデータを扱う複数の命令を同時並列的に実行可能となる。
スーパースカラーCPUの設計では、複数存在する実行ユニットを常に働かせておくために、命令の分配機構が重要である。実装される実行ユニット数が増えるにつれ、その重要性は増している。初期のスーパースカラー型CPUには、2つのALUと1つのFPUが搭載されていたが、最近の PowerPC 970 では4つのALUと2つのFPUと2つのSIMDユニットが搭載されている。分配機構が効率的でない場合、これらの実行ユニットに連続して命令を供給することができず、システムの性能は全体として低くなる。
スーパースカラープロセッサの実行効率はサイクル当たりの実行命令数で表される。ただし、サイクル当たりの実行命令数が大きいからといって、常にスーパースカラーだとは限らない。パイプライン型CPUやマルチコアCPUも同様の性能を示すが、方式は異なる。
スーパースカラー型CPUでは、分配機構がメモリから命令群を読み込み、そこから並列に実行できる命令を選択し、実行ユニット群にそれらを供給する。従って、スーパースカラープロセッサはパイプラインが複数あって、各パイプラインが1つの命令スレッドを実行していると見なすこともできる。
1965年のシーモア・クレイが設計したCDC 6600が、最初のスーパースカラー設計のマシンと言われている。
商用のシングルチップのスーパースカラーマイクロプロセッサは、Intel i960CA(1988年)と AMD 29000シリーズの 29050 (1990年)が最初である。RISC型CPUの設計ではコアが単純であったため、当時の設計ルールの細かさでもワンチップに複数の実行ユニット(ALUなど)を搭載でき、スーパースカラーを実現できたのである。このため、1980年代から1990年代にかけての時期に RISC が CISC に対して性能的に優位に立った。一部の低消費電力の組み込み向けプロセッサを除いて、1998年以降に開発された汎用プロセッサは基本的に全てスーパースカラーである。
現在パーソナルコンピュータでデファクトスタンダードとなっているx86アーキテクチャでは、1993年のPentiumで2実行ユニットのインオーダ実行型のスーパースカラーを実現し、その後の"P6"(Pentium Pro と Pentium II)以降で3実行ユニットのアウトオブオーダ実行型スーパースカラーに発展した。2008年現在のIA-32アーキテクチャは単一コア当り5実行ユニットのアウトオブオーダ実行型スーパースカラーで、平均IPCは3以上を達成している。