APP下载

分支预测技术对性能影响研究

2021-04-20徐永新

电子技术与软件工程 2021年1期
关键词:指令机制

徐永新

(华为技术有限公司 江苏省南京市 210012)

为了提升处理性能,现代CPU 采用多级流水线机制,经典的五级流水线分成取指,译码,执行,访存,写回等几个阶段。流水线机制可以有效提升指令的并行度,但是存在一些流水线冲突的场景,造成流水线效率的降低。这样的流水线冲突包括结构冲突,控制冲突和数据冲突。

流水线的控制冲突也称为分支冲突。程序执行过程中有许多分支跳转的情况,流水线遇到分支跳转时,并不知道后面要真正执行的指令在哪里,因为分支跳转的目标地址还没有被计算出来。这个时候流水线就需要采用某种策略,来预测后面将要执行的分支。如果预测对了,那么流水线的效率将能维持在较好的水平。反之,预测错了,则错误的流水线处理结果都会被丢弃,重新从正确的目标地址取出指令重新执行,这将严重影响流水线的执行效率。

1 分支预测技术

1.1 静态分支预测器

静态分支预测是一种实现简单的方法,比如预测永远不发生跳转,取指单元总是按顺序取指,直到发现错误才丢弃不正确的中间状态,重新取指。

静态分支预测特点是实现简单,但是预测的精度不高,在早期的CPU 设计中会使用这种方式。

1.2 动态分支预测器

现代处理器使用较多的是动态分支预测器,该类预测器能够记录分支的历史跳转信息,来预测将要执行的分支跳转行为。如果由于程序执行的行为发生改变,预测器也会根据执行情况自动调整,从而拥有较好的预测准确度和自适应性。……

登录APP查看全文

猜你喜欢

指令机制
听我指令:大催眠术
构建“不敢腐、不能腐、不想腐”机制的思考
ARINC661显控指令快速验证方法
LED照明产品欧盟ErP指令要求解读
自制力是一种很好的筛选机制
杀毒软件中指令虚拟机的脆弱性分析
定向培养 还需完善安置机制
破除旧机制要分步推进
注重机制的相互配合
打基础 抓机制 显成效