体系结构学习8-乱序中的数据访问

本文探讨了计算机体系结构中乱序执行的概念及其在提升性能方面的作用。精确中断点确保了debug和程序切换的便利性。通过Reorder Buffer实现乱序执行,但在写回时需处理中断和错误的分支预测。同时,文章介绍了多种中间数据存储方式,如History Buffer和Future Register File,并讨论了内存访问的挑战与解决方案,包括解决内存别名、load forwarding等问题。乱序执行能够利用指令执行时间的不一致提高性能,并为超越指令级并行(ILP)提供了基础,如线程并行、数据并行和请求并行等。
摘要由CSDN通过智能技术生成

精确中断点

前面的指令都完成写回到相应的寄存器,后面的还没有。

好处

易于debug,切换程序,贴切冯诺依曼结构更易于理解

方法

1、顺序执行——浪费时间,无法判断每个指令的执行时间(lS)
2、Reorder Buffer——指令乱序执行结束后存储在ROB,然后按冯诺依曼结构顺序写回到真实地址,让程序员看见结果。在写回(retire)时处理中断,错误的branch prediction。

优劣

1、优点:顺序执行模式便于理解和实现精准中断
2、缺点:ROB相当于寄存器堆,要求读取速度很快;存在大量的冗余数据拷贝;RS混存了数据信息(data)和控制信息(tag)

中间数据存储其他方式

1、History Buffer

  • 指令发射时,将数据存储在HB,在中断后能找回数据(读取HB不在critical path)
    2、Future register file
  • 运行时用ff更快,af给程序员看(ROB和ARCH file不在critical path)
    3、checkpoint
  • 预测时存储状态

内存访问

1、内存与寄存器区别

  • 内存地址很难判断数据依赖关系,寄存器从指令就能知道
  • 内存空间远大于寄存器,操作没有寄存器灵活。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值