PPM-like分岐予測器とTAGE分岐予測器の違い

An Alternative TAGE-like Conditional Branch Predictor https://hal.inria.fr/hal-01799442/document という論文に載っていて、

TAGE分岐予測器は、PPM-like分岐予測器と異なり、 * グローバル分岐履歴の最長一致で予測を立てるのではなく、二番目に長く一致したものも考慮に入れる * 最長一致の信頼性が怪しい時などに、二番目のが使われる * uビットではなくuカウンタを持っている(uは役に立つ予測を提供した情報であることを意味する。usefullの略)。 * 予測を外した時だけではなく、時間経過でuカウンタを減少させる * 予測ミスが発生したときに、すべてのテーブルにエントリを確保するのではなく、一つのテーブルにのみエントリを確保する

このうち、最後の部分の効果がかなり大きいです。 近年では、一つのミス当たり平均して1未満のエントリしか確保しない方式が主流です。 この論文は、エントリを確保する頻度を制御する方法について書かれています。

uカウンタとかは、かなりチューニングの域です。実際、2016年の64KB TAGE-SC-L分岐予測器ではuカウンタは1ビットでよいと言っています。