マイクロアーキテクチャ
かつてはハイエンドのメインフレームやスーパーコンピュータのためのものであったが、小規模の2-8個のマイクロプロセッサを搭載したサーバはスモールビジネスの市場で一般的になっていた。大企業では、大規模(16-256個)のものが一般的である。さらに複数のCPUを搭載したパーソナルコンピュータが1990年代に登場した。
半導体技術の進歩によってもたらされる、さらなるトランジスタサイズの減少はさらに進み、複数のCPUが同じシリコンチップ上に実装されたマルチコアCPUが登場している。はじめは組み込み市場をターゲットとし、シンプルで小さなCPUのみ1つのシリコン上に実装可能であった。2005年までに、半導体技術の進歩によりハイエンドのデスクトップCPUを二つ搭載した CMPチップを大量生産することが可能となった。サンマイクロシステムズの UltraSPARC T1 のように、単純な(スカラー、インオーダーの)設計を踏襲し、1つのシリコンにより多くのプロセッサを詰め込む事を選択したものもある。
また、最近よく用いられるようになった技術としてマルチスレッディングがある。
これまで述べてきたような方法を実装すると複雑さやゲート数が増大するのだが、半導体製造技術の向上により、すぐに多くのゲートが搭載できるようになってしまう。
上記に述べた方法では、プロセッサは一度に1つの命令の一部を実行する。もし複数の命令が同時に実行できれば、コンピュータのプログラムはより高速に動作するはずである。これがスーパースカラーの実現するもので、そのためにALUなどの機能ユニットを複数個搭載する。機能ユニットを複数搭載することは、シングルイシューのプロセッサのダイサイズが安定して生産できるダイサイズについていかなくなって初めて意味がある。1980年代の後半までには、スーパースケーラの設計が市場に登場し始めた。
現代的な設計では、ロードユニットを二つ、ストアユニットを1つ(多くの命令はストアする結果がないため)、2つ以上の整数演算ユニットと浮動小数点ユニット、何らかのSIMDユニットがよく見られる。命令発行のロジックはメモリから膨大な命令列を読み込み、その時点でアイドルになっている実行ユニットに引き渡すため複雑さが増大する。処理の結果は最後に集められ、並べ替えられる。