使用分支历史来进行分支预测的准确率

1.历史太长的话,会分散到很多表项上去,如果训练时间足够长或是历史分支都倾向于某 一个方向
  可以预测的很准确
2.21264左边使用局部历史索引,右边使用全局历史索引
  还会遇到冲突的问题,如果训练时间和历史记录都足够长 ,可以减小冲突的影响
3. 为什么使用历史会这么准?
  需要去分析 程序行为:程序中会出现很多适合用历史索引的代码
4.都是hash,hash历史比hash地址更general, 与程序行为的相关性高,更难分析
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
分支预测是计算机中的一种技术,用于提高程序的执行效率。其中,BTB(Branch Target Buffer)和BHT(Branch History Table)是两种常见的分支预测方法。 BTB是一种缓冲区,用于存储分支指令的预测目标地址。在程序中,分支指令会根据特定的条件来选择跳转到不同的代码块。BTB通过记录过去的分支指令及其目标地址,以便在将来遇到相同的分支指令时可以快速预测其目标地址。这样,在预测正确的情况下,可以避免浪费时间等待分支判断的结果,并提前开始执行预测目标地址处的指令流。但是,当预测错误时,需要回退到正确的指令位置,这样会带来额外的开销。 BHT是一种记录分支历史的表格。它用来跟踪分支指令的历史模式,以便在将来遇到相同的分支预测其行为。BHT可以记录分支指令的条件判断结果,比如“是否进入循环”,然后基于历史记录来预测下一次分支指令的结果。如果历史模式具有一定的规律性,那么BHT能够准确地预测分支的行为,提高程序的性能。但是,当历史模式改变时,预测就会出错,需要进行修正。 综上所述,BTB和BHT是分支预测的两种常见方法。BTB通过存储过去的分支目标地址来预测分支指令的执行位置,而BHT通过记录历史模式来预测分支指令的行为。这些预测技术能够显著提高程序的执行效率,但也有一定的错误率,并且需要额外的硬件支持来实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值