浙江工商大学-计算机体系结构-第3章指令级并行的限制.pptVIP

浙江工商大学-计算机体系结构-第3章指令级并行的限制.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3.5 多线程 多线程 多线程的两种方法 2、粗粒度多线程 是作为细粒度多线程的替代而设计的。粗粒度多线程只发生在代价较高的停顿时才切换线程,比如二级Cache缺失。粗粒度多线程降低了线程切换代价,很大程度上避免了降低处理器速度的问题,但缺点是克服吞吐量损失能力有限。 3.5 多线程 同时多线程 同时多线程是细粒度多线程的改进版本,它可以使超标量处理器能够完整有效地开发指令级并行和多线程。同时多线程使用多发射和动态调度处理器在开发线程级并行的同时开发指令级并行。 同时多线程的产生是由于现代多发射处理器的功能单元中含有大量的并行度,而单个线程无法有效地利用这种并行度。 3.5 多线程 同时多线程 几种处理器性能比较: 1、不支持多线程 发射槽利用率受到缺乏指令级并行度的限制 2、粗粒度处理器 可以在一个线程停顿时切换到另一个线程以 利用处理器资源,但在每个时钟周期内部,指令级并行的限制仍然会引起空闲。 3.5 多线程 同时多线程 几种处理器性能比较(见图3.8): 3、细粒度处理器 线程的交替消除了完全空的发射槽,但由于在给定的时钟周期内只允许一个线程发射指令,因此每个时钟周期内部还是会出现空闲的发射槽 4、同时多线程 所有发射槽在一个时钟周期内被多个线程共享,线程级并行和指令级并行被同时开发 3.5 多线程 同时多线程的设计挑战 将多个线程混合在一起会影响单个线程的执行时间,在取指令的过程中也存在类似的问题。为了最大限度维持单个线程的性能,应当尽可能早地为单个线程取指,并在转移预测错误和预取缓存缺失时清空取指单元。但这种做法会限制其他线程可调度的指令数,降低吞吐量,多线程处理器必须在这个矛盾中作出权衡。 3.5 多线程 同时多线程的设计挑战 其他的一些挑战: 1、为了保存多个上下文信息,寄存器文件会很庞大; 2、不能影响每个时钟周期的开销,特别是在关键步骤上,比如在指令发射步骤中需要考虑更多候选指令,在指令完成步骤中需要对提交的指令进行选择; 3、必须保证Cache冲突不会使性能显著下降 3.5 多线程 同时多线程的潜在优势 测试数据表明(见图3.9),同时多线程的的加速比在0.9-1.67之间,平均1.2。IBM Power5是目前多线程的强大实现,对于大多数应用来说,同时多线程或多或少都使性能得到了提升,而对于浮点密集型应用来说,由于Cache冲突最为严重,因此从同时多线程中获益最少。 第3章 指令级并行的限制 介绍 指令级并行限制的研究 实际处理器中指令级并行性限制 硬件和软件推测的限制 多线程 3.1 介绍 问题引出 上一章我们介绍了流水线机制、多发射机制、动态调度机制和推测机制。当前设计者将精力集中在优化设计上,尝试在不改变发射速率的情况下获得更快的时钟频率,即开发指令级并行的时代即将结束。 本章我们讨论指令级并行的限制,如程序结构、硬件的预算以及转移预测的准确率等;最后讨论线程级并行,作为指令级并行的替代和补充。 3.2 指令级并行性限制的研究 研究五个方面的内容 指令级并行性限制的研究涉及以下五个方面的内容:硬件模型、窗口的大小和最大发射数的限制、实际转移和跳转预测的影响、有限寄存器的影响以及非完美别名分析的影响。 3.2 指令级并行性限制的研究 硬件模型 理想处理器:是指消除了所有指令级并行约束的处理器,在理想处理器中,对指令级并行的唯一约束来自寄存器或存储器中的实际数据流。 理想处理器包含以下方面的假设:寄存器重命名、转移预测、跳转预测、存储器地址别名分析、最优Cache。 3.2 指令级并行性限制的研究 理想处理器 寄存器重命名 可用的虚寄存器数量没有限制,可以避免WAW和WAR冒险,可以有无限的指令同时开始执行 转移预测 最佳的转移预测,能够准确预测所有条件转移 跳转预测 能够准确预测所有跳转,包括返回跳转和需要计算的跳转 3.2 指令级并行性限制的研究 理想处理器 存储地址别名分析 能够准确确定所有的存储器地址,在不引用同一地址的情况下,load指令可以移动到store指令之前,这实现了最佳地址别名分析 最优Cache 所有的存储器访问花费1个时钟周期,实际应用中处理器通常隐含Cache缺失,使指令级并行度大受限制 3.2 指令级并行性限制的研究 理想处理器 转移预测和跳转预测消除了所有的控制相关,寄存器重命名和存储器地址别名分析消除了除真数据相关之外的所有相关性,这

文档评论(0)

wendan118 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档