高性能处理器体系结构推测执行分支预测技术.ppt

高性能处理器体系结构推测执行分支预测技术.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
高性能处理器体系结构推测执行分支预测技术

* * 性能比较 @SPEC89 * * 混合预测算法的例子:Alpha 21264的分支预测器 Global PHT (1?12) Global BHR per-set BHT global PHT n=10 k =10 k = 12 Local history prediction Global history prediction SAg(10) GAg(12) Selector CS258 S99 * CS of USTC AN Hong Lecture on High Performance Processor Architecture (CS05162) 推测执行:分支预测技术(2) * * Dynamic Prediction(1): 利用单个分支自身历史(基于模式的预测) Dynamic Prediction :Use run-time information to make prediction example: Branch Prediction Buffer(1-位预测器) * * Dynamic Prediction: 1-bit BHT Branch History Table Lower bits of PC address index table of 1-bit values Says whether or not branch taken last time No address check Problem: in a loop, 1-bit BHT will cause two mispredictions : End of loop case, when it exits instead of looping as before First time through loop on next time through code, when it predicts exit instead of looping * * Dynamic Prediction: 1-bit BHT (Branch Prediction Buffer) Pros: Small. 1 bit per entry can fit lots of entries Always returns a prediction Cons: aliasing between branches one bit of state mispredicts many branches for (I =0; I10; I++) { a = a + 1; } Two mispredictions per loop invocation * * Solution: 2-bit predictor where change prediction only if get misprediction twice: Use extra state to reduce mispredictions at loop ends Red: stop, not taken Green: go, taken Adds hysteresis to decision making process T T NT NT Predict Taken Predict Not Taken Predict Taken Predict Not Taken T NT T NT Dynamic Prediction(2):Bimodal Branch Prediction Scheme(2bits BHT, 2-位饱和预测器) 11 10 00 01 ? BHT T = Taken N = Not Taken 2-bit Saturating Up-down Counter * * Bimodal Branch Prediction Scheme Strategy: Based on the direction the branch went the last few times it was executed. Based on a little self-history pattern Based on a counter Works well: when each branch is strongly biased in a particular direction. For scientific/engineering applications where program execution is dominated by inner-loops. * * Bimodal Branch Prediction Scheme 例1:…NNNT

文档评论(0)

sunshaoying + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档