分岐予測とは?ぶんきよそく
分岐予測とは、条件分岐の成否を事前に推測し、パイプラインへ続けて投入する命令を決める仕組み。実行時の履歴を保持して当てる動的予測と、コンパイル時のヒントや経験則で決める静的予測がある。外れると投入済みの命令を破棄してパイプラインを埋め直すため、段数が深いほど1回の失敗が重くのしかかる。
最終更新:2026-10-06
エンベデッドSPを最短で暗記・合格する →背景
パイプラインは次に実行する命令が決まっている前提で動くが、条件分岐の結果は前の命令が終わるまで確定しない。素直に待てば毎回パイプラインが空になり、段数を深くした効果が消えてしまう。待たずに推測して進み、外れたときだけやり直すほうが平均では速い、という賭けを制度化したのが分岐予測である。
具体例
2ビット飽和カウンタは直近の成立・不成立を2ビットの状態で保持し、2回続けて外れるまで予測を反転させない。ループ末尾の分岐は最後の1回を除いて成立するため、この方式で高い的中率が出る。制御周期の最悪値を見積もるときは、当たった場合ではなく外れた場合のペナルティで計算する。
試験での引っ掛け
投機実行と混同しやすい。分岐予測はどちらへ進むかを当てる判断の仕組み、投機実行は当てた側を実際に先行して実行する仕組みで層が違う。静的予測がコンパイル時、動的予測が実行時という対応も逆にしない。リアルタイム性を論じる場面では、予測が当たる前提の平均性能を根拠にできない点が要になる。
関連用語
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。