アウトオブオーダー実行
待ち時間を避けるため、CPUがプログラムの記述とは違う順序で命令を実行すること。ある命令がメモリからのデータを待つ間に、後続の独立した命令を先に進め、結果は外から見て正しい順序で見せる。
問題は、インオーダーのCPUでは、キャッシュミスなどで命令が待つと全体が止まってしまうことだ。アウトオブオーダー(OoO)は、これから来る命令の窓を見渡し、待っているものに依存しない命令を今すぐ実行する。「リオーダバッファ」が結果をプログラム順にリタイア(外部に確定)させるので、正しさは保たれる。古典的な手法はTomasuloのアルゴリズムで、偽の依存を断つためにレジスタリネーミングを使う。利点は実行ユニットを遊ばせず、大きな性能向上が得られること。代償は、複雑で電力を食うロジックである(省電力コアや一部のマイコンはインオーダー)。投機的実行やスーパースカラ設計と関係が深い。