アウト・オブ・オーダー実行プロセッサとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > アウト・オブ・オーダー実行プロセッサの意味・解説 

アウト・オブ・オーダー実行プロセッサ

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/03/12 14:15 UTC 版)

アウト・オブ・オーダー実行」の記事における「アウト・オブ・オーダー実行プロセッサ」の解説

OoOでは、命令及び実行結果一時溜めておく場所を作り命令実行次のように細分化する。 命令フェッチ命令にリオーダ・バッファ(reorder buffer)のエントリを割り当てる命令命令待ち行列または命令発行キュー(reservation station, issue queue)に送る(dispatch)。 命令待ち行列内の命令は、入力オペランド得られるまで実行されない入力オペランド得られ段階で、待ち行列内にそれより古い命令があっても先に待ち行列から取り除かれ実行されることになる。 命令適当な実行ユニットに対して発行(issue)され、実行される実行結果がリオーダ・バッファに格納される。 リオーダ・バッファ内の命令のうち、最も古い命令実行完了すると、その実結果レジスタファイル書き戻され命令はリオーダ・バッファから取り除かれる。これを卒業ないしリタイア(graduation, retire)ステージと呼ぶ。命令待ち行列とは異なり、より新しい命令が実行完了状態であってもそれより古い命令がリオーダ・バッファ内にリタイアせずに残っている場合は、その(より新しい)命令リタイアすることはできないOoOの鍵になるコンセプトはある命令実行必要なデータ得られない状態でも、プロセッサ動作止めず他の命令実行し続けられるようにすることである。インオーダ実行では必要なデータ全部揃わないと(2)の段階実行止まってしまう。この点を改善したのがOoOである。 OoOプロセッサはこの半端な時間スロット)を他の「準備ができている」命令当て、後にリタイアステージで実行結果レジスタファイル反映させる順序修正することで、順序通り命令実行したのと同じ結果得られるようにする。本来のプログラムコード書かれ命令順序は「プログラム順」(program order)と呼ばれるが、この種のプロセッサ内部では「データ順」(data order)で扱われる。つまり、データないしオペランドプロセッサレジスタ用意される順序である。これら二種類順序間の変換行い同時に出力論理的な整合性持たせるためには相当複雑な回路が必要である。プロセッサはまるでランダムな順序命令実行するように見える。 命令パイプライン深くなり、主記憶装置(あるいはキャッシュメモリ)に比べプロセッサ高速なる程OoO威力は増す。例えば、現代プロセッサメモリの数倍の速さ動作しており(=メモリ読み書きするのに沢山のサイクル数を必要とする)、バス上にデータ乗るのを待つのは非常にサイクル数を無駄にすることになる(ノイマンズ・ボトルネック参照)。

※この「アウト・オブ・オーダー実行プロセッサ」の解説は、「アウト・オブ・オーダー実行」の解説の一部です。
「アウト・オブ・オーダー実行プロセッサ」を含む「アウト・オブ・オーダー実行」の記事については、「アウト・オブ・オーダー実行」の概要を参照ください。

ウィキペディア小見出し辞書の「アウト・オブ・オーダー実行プロセッサ」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「アウト・オブ・オーダー実行プロセッサ」の関連用語

アウト・オブ・オーダー実行プロセッサのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



アウト・オブ・オーダー実行プロセッサのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのアウト・オブ・オーダー実行 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS