IA-64における例
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/07/16 13:56 UTC 版)
「ソフトウェアパイプライン」の記事における「IA-64における例」の解説
インテルの IA-64 はこのようなソフトウェアパイプラインの困難な点を念頭に置いて設計されたアーキテクチャの一例である。ソフトウェアパイプラインに関係するアーキテクチャ上のポイントの主要なものとして、以下のような点などがある。 "rotating" レジスタバンク —— ループ内で、命令は別のレジスタを指すレジスタ番号を用いてレジスタを参照することができる(最終的には最初に戻ることができる)。これによって、上記の例のようにレジスタの重複を避けるための命令列を追加する必要がなくなる。 "predicate" レジスタ —— predicateレジスタは、ループ内の比較命令によりセットされる。その値により後続するスロットの実行/否を制御することで、分岐を削除しパイプラインの乱れを抑制する(if 変換)。IA-64のpredicate レジスタは、その名前からしばしば分岐予測(branch prediction)と混同されるが、ARMアーキテクチャの条件付き実行命令と同様のコンセプトで、参照するpredicate レジスタの値によってスロットのオペレーションの実行/否を制御するものである。64本あるpredicate レジスタの1つpr0は常に真を返し、無条件実行のために使われる。
※この「IA-64における例」の解説は、「ソフトウェアパイプライン」の解説の一部です。
「IA-64における例」を含む「ソフトウェアパイプライン」の記事については、「ソフトウェアパイプライン」の概要を参照ください。
- IA-64における例のページへのリンク