分支预测错误处罚
文章目录
一个错误的分支预测,会导致20~40个时钟周期的浪费。
最精密的分支预测硬件也只能有大约50%的正确率。分支行为很容易预测时,每次调用函数需要大约13个时钟周期, 而分支行为是随机模式时,每次调用需要大约35个时钟周期。因此可以推断出分支预测的处罚大约是44个时钟周期。
预测错误处罚的计算
假设预测错误的概率是p,如果没有预测错误,执行代码的时间是TOK,而预测错误的处罚是TMP。 那么,作为p的一个函数,执行代码的平均时间是Tavg(p)=(1-p)TOK+p(TOK+TMP)。 如果已知TOK和Tran(当p=0.5时的平均时间),代入等式,我们有 Tran=Tavg(0.5)=TOK+0.5TMP, 所以有TMP=2(Tran-TOK)。因此,已知TOK=13和Tran=35,我们有 TMP=44。
- 本文链接:https://tenfy.cn/2018/11/06/branch-prediction-penalty/
- 版权声明:本博客所有文章除特别声明外,均采用CC BY-NC-SA 3.0许可协议。转载请注明出处!