竹下世界塔の計算機よもやま話

アクセスカウンタ

zoom RSS ハードウェアに対する分岐ヒント

<<   作成日時 : 2012/04/20 17:28   >>

ブログ気持玉 0 / トラックバック 0 / コメント 0

 SPARC V9には条件分岐命令が分岐しそうかそうでないか、ハードウエアにヒントを与えるbitがある。調べたら他にもあった。

分岐命令のペナルティ分岐予測はこの調査の準備でした。

□SPARC V9 (JPS1) JPS1 Commonality R1.0.4
 SPARC V8からある条件分岐命令Bcc、浮動小数点条件分岐命令FBccに対して分岐ヒント付きのBPccとFBPfcc命令がある。
pビット Predict that branch will not be taken(=0) / will be taken(=1)

□POWER ISA PowerISA_V20.6B_V2_PUBLIC
 "2.4 Branch Instructions"にatビットによる分岐ヒントが書かれている。
at=00..No Hint、at=10 very likery not to be taken、at=11 very likery to be taken
 BHフィールドでbclr[l]、bcctr[i]命令がサブルーチンからの戻りであるかどうかを示す。
 指し示すアドレスが分岐予測の対象ではないかどうかもBHフィールド='11'で示す。これはcase文や算術GOTO文での飛び先指示に使う。

□IA-64 Itanium-archtecture-vol-1-2-3-4-reference-set-manual
 "4.5.2 Branch Prediction Hints"に記載あり。
spnt .. Static Not-Taken 非分岐方向
sptk .. Static Taken 分岐方向
dpnt Dynamic Not-Taken 分岐予測のハードウェア優先、履歴がなければ非分岐方向
dptk Dynamic Taken 分岐予測のハードウェア優先、履歴がなければ分岐方向

□IA-32(Intel64/AMD64) Intel 64 and IA-32 Archtectures Developer's Manual
 "11.4.5 Branch Hints"に記載あり。
SSE2拡張で2EH、3EHのプレフィックスによりJcc命令を修飾。(インテルでの16進表記は0x2eではなく2EHですよ)
特にニーモニックは割り当てられていない。
辿っていくとvol-2Aに解説がある。
2EH .. Branch not taken (used only with Jcc Instructions)
2EH .. Branch taken (used only with Jcc Instructions)


※Alpha、PA-RISC、MIPS、ARMは命令セットに組み込まれた分岐ヒントはなし。
・Alpha Alpha Architecture Fourth Edition
 "4.3 Control Instructions"に記載あり。命令セットには明示的な指示はないが、分岐予測の実装についての記述はある。


 で、少し考えてみる。分岐予測機構がなかった頃のプロセッサは分岐する方向(前か後か)でループしているのかループから抜け出すのかを推測する程度だった。分岐命令にヒントを付けることである程度の改善はできただろうが、分岐予測機構のヒット率が向上するとこの指示は意味がなくなる。あっても無視されるだけになる。幸い、遅延分岐とは違い互換性を損ねることはない。分岐命令のヒントは過渡期の技術と言えそうだ。
 このようにハードウェアの実装に対して命令セットで動作をサジェストするのは後々意味をなくすのではないだろうか。

 PentiumIIIの頃(SSE2デビュー)と比べてCore2DuoやCoreiシリーズはどうなのだろうか。実際に性能測定をしたわけではないので、例えばx86でSSE2命令の分岐ヒント(2EH,3EH)が最近のコンパイラで付けられているかどうかは確認していない。

テーマ

注目テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文




ハードウェアに対する分岐ヒント 竹下世界塔の計算機よもやま話/BIGLOBEウェブリブログ
文字サイズ:       閉じる