アウトオブオーダー実行
読み:アウトオブオーダーじっこう
外語:out of order execution
マイクロプロセッサーの高速化のための技術の一つ。プログラムに記述された順序に関係なく、互いに依存関係にない命令を、実行できるものから先に実行していく方式。
概要
プログラムに記述された順序(order)どおりに実行することをインオーダー実行といい、初期のマイクロプロセッサーは全てこの方式だった。
これに対してアウトオブオーダー実行は、プログラムに記述された順序を無視(out of order)し、実行できるところから実行し、あとで整合性を取ることで、実行待ち時間を減らして高速化するという方式である。
特徴
命令処理回路を複数持ち並列動作させる技術がスーパースケーラーで、2命令同時実行や4命令同時実行などの製品がある。
しかし、実際のプログラムの命令配列状態によっては、このうちの一つしか稼動させられない状況になることもある。
性能を発揮するためには命令処理回路の稼働率を上げる必要があり、スーパースケーラーと組み合わせるためにアウトオブオーダー実行が開発された。
再検索