首页> 外文期刊>ACM transactions on computer systems >An Evaluation of Speculative instruction Execution on Simultaneous Multithreaded Processors
【24h】

An Evaluation of Speculative instruction Execution on Simultaneous Multithreaded Processors

机译:同时多线程处理器上的推测性指令执行的评估

获取原文
获取原文并翻译 | 示例
           

摘要

Modern superscalar processors rely heavily on speculative execution for performance. For example, our measurements show that on a 6-issue superscalar, 93% of committed instructions for SPECINT95 are speculative. Without speculation, processor resources on such machines would be largely idle. In contrast to superscalars, simultaneous multithreaded (SMT) processors achieve high resource utilization by issuing instructions from multiple threads every cycle. An SMT processor thus has two means of hiding latency: speculation and multithreaded execution. However, these two techniques may conflict; on an SMT processor, wrong-path speculative instructions from one thread may compete with and displace useful instructions from another thread. For this reason, it is important to understand the trade-offs between these two latency-hiding techniques, and to ask whether multithreaded processors should speculate differently than conventional superscalars. This paper evaluates the behavior of instruction speculation on SMT processors using both mul-tiprogrammed (SPECINT and SPECFP) and multithreaded (the Apache Web server) workloads. We measure and analyze the impact of speculation and demonstrate how speculation on an 8-context SMT differs from superscalar speculation. We also examine the effect of speculation-aware fetch and branch prediction policies in the processor. Our results quantify the extent to which (1) speculation is critical to performance on a multithreaded processor because it ensures an ample supply of parallelism to feed the functional units, and (2) SMT actually enhances the effectiveness of speculative execution, compared to a superscalar processor by reducing the impact of branch misprediction. Finally, we quantify the impact of both hardware configuration and workload characteristics on speculation's usefulness and demonstrate that, in nearly all cases, speculation is beneficial to SMT performance.
机译:现代超标量处理器在很大程度上依赖于推测执行来提高性能。例如,我们的测量结果表明,在6个问题的超标量中,SPECINT95的已提交指令的93%是推测性的。无需推测,此类机器上的处理器资源将在很大程度上处于空闲状态。与超标量相比,同时多线程(SMT)处理器通过每个周期从多个线程发出指令来实现高资源利用率。因此,SMT处理器具有两种隐藏延迟的方式:推测和多线程执行。但是,这两种技术可能会冲突。在SMT处理器上,来自一个线程的错误路径推测指令可能会与另一个线程的有用指令竞争并取代有用指令。因此,重要的是要了解这两种延迟隐藏技术之间的权衡,并询问多线程处理器是否应该以不同于传统超标量的方式进行推测。本文使用多种编程(SPECINT和SPECFP)和多线程(Apache Web服务器)工作负载评估了SMT处理器上指令推测的行为。我们测量并分析了投机的影响,并演示了在8上下文SMT上的投机与超标量投机有何不同。我们还检查了处理器中支持推测的获取和分支预测策略的效果。我们的结果量化了(1)推测对于多线程处理器上的性能至关重要的程度,因为推测可以确保提供充足的并行性以供功能单元使用;(2)与超标量相比,SMT实际上增强了推测执行的有效性。处理器通过减少分支预测错误的影响。最后,我们量化了硬件配置和工作负载特征对推测的有用性的影响,并证明了在几乎所有情况下,推测对SMT性能都是有益的。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号