现代处理器设计——超标量处理器基础(执行多线程)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/shuiliusheng/article/details/82218037

现代处理器设计——超标量处理器基础(执行多线程)

  1. 构造多处理机系统的挑战:如何为所有的线程提供一致的存储器视图,同时尽量减少平均访存延迟。

  2. load-locked/store-conditional:读出一个值,执行其他任意操作,然后试图将数据存到同一地址。如果中间插入其他任何一个线程的针对于同一地址的写操作,都会导致写条件失败。

    实现:每条LL指令必须记住它读取的地址,所有后续的写操作必须检查写地址,确定是否与LL指令读取的地址匹配。最后当stc执行时,同样必须检查地址,确定是否与链接地址匹配,如果匹配,stc允许执行,否则stc失败并设置条件码

  3. 目录一致性实现的优点:

    • 带宽扩展:目录的带宽随着存储器的带宽增长而增长,同时通过在目录中过滤掉一些命令,减少了对于地址总线带宽的需求。
    • 访存延迟:cache失效的延迟能够显著地减少。因为一旦存储器完成对目录的检查,就能提供数据。同时私有数据在本地存储器中,访问延迟也很低
    • 缺点:当发生cache失效而所请求的行在远程cache中是dirty时,会带来额外的延迟。
  4. 监听/目录混合系统:在小部分的处理机集合中使用传统的,基于总线的监听协议来维护一致性,但是多个集合之间的一致性是通过建立在可扩展一致性结构标准上的目录协议实现的。混合机制具有目录机制的可扩展的优点,同时对于能够在本地监听域内满足的通信失效,保持了较低的平均延迟

  5. CMP的好处:在单个芯片上集成多个处理器使得多个处理器的封装和互连的物理实现变得容易。紧密的集成减少了片外信号,从而减少了处理器与处理器之间的通信和同步延迟。

  6. CMP的缺点:

    • 如果使用相同的硅技术,在同样的造价下,得到的单处理器运行单个线程的速度要比CMP快
    • 集成多个核很容易导致圆片面积过大
    • 操作系统和软件的扩展能力给系统中处理器数目设置了上限,该上限比由物理封装和其他物理限制所决定的上限更低
  7. 隐式多线程(IMT):利用程序控制流的特点,自动生成多个线程。线程规模较小。IMT处理器设计的三个挑战:化解控制相关、化解寄存器数据相关以及化解存储器数据相关。

  8. 控制无关:程序控制流图中,一个节点是控制无关的,无论该节点与当前节点之间的条件分支如何化解,都会执行到这个节点。很多IMT设计都利用控制相关的特点来增加指令窗口的大小。在IMT的设计中,隐式线程可以产生于控制流的回合处,子过程的返回地址处,循环体或者循环跳出处,这些线程的产生是不需要推测的。

    • 中间任何错误预测的分支指令不会直接影响到控制无关的线程
    • 跳过指令具有积极的预取效果
  9. 主动分离执行(DEE,disjoint eager execution):另一种创建IMT的方法。在DEE设计中,对分支判定树的每一个分支的累计分支预测率进行比较,并选择累计预测率最高的分支执行,从而实现了对判定树的减枝。传统的分支预测器提供主路径,DEE提供候选路径,两者交叉执行。这些候选路径在DEE中就称为隐式线程。

  10. 线程级的推测技术(TLS,thread-level speculation):在编译时,为循环的每个循环体创建一个线程

  11. 几种隐式多线程方法的特点
    这里写图片描述

  12. 执行相同的线程:主要解决错误发现的问题。通过在不同的线程上下文中将同一指令流执行两次并比较其结果,可以发现流水线中的瞬时错误,即如果由于一个存储单元的错误导致流水线硬件将某一位翻转,在冗余的指令流中同一位也被翻转的可能性很小。通过比较线程之间的结果,可以发现很多这样的瞬时错误。
    这里写图片描述

  13. 一种使用冗余执行进行数据预取的方法:datascalar体系结构

    在这种体系结构中,存储器被划分为几个处理器,所有的处理器都执行同一个程序。处理器通过快速广播网络连接起来,使它们能够很快对存储器操作数进行通信。每个处理器负责将程序对其本地存储器引用广播给其他处理器。按照这种方式,每个引用只被广播一次,每个处理器就能够满足程序的所有引用,要么从它的本地存储器获得,要么从一次广播中获得,所有对远程存储器的引用都可以通过无请求的方式满足。

  14. 对于分支化解,预执行的分支结果必须和主线程中同一分支正确地同步,否则,如果将分支结果应用于错误的分支,预执行就会失败。线程不能基于静态分支PC同步,因为同一静态分支可能会存在多个动态实例。

猜你喜欢

转载自blog.csdn.net/shuiliusheng/article/details/82218037
今日推荐