首页> 外文期刊>IEEE Transactions on Parallel and Distributed Systems >Mitosis: A Speculative Multithreaded Processor Based on Precomputation Slices
【24h】

Mitosis: A Speculative Multithreaded Processor Based on Precomputation Slices

机译:有丝分裂:一种基于预计算切片的推测性多线程处理器

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

摘要

This paper presents the Mitosis framework, which is a combined hardware-software approach to speculative multithreading, even in the presence of frequent dependences among threads. Speculative multithreading increases single-threaded application performance by exploiting thread-level parallelism speculatively - that is, executing code in parallel even when the compiler or runtime system cannot guarantee the parallelism exists. The proposed approach is based on predicting/computing thread input values via software, through a piece of code that is added at the beginning of each thread (the pre-computation slice). A pre-computation slice is expected to compute the correct thread input values most of the time, but not necessarily always. This allows aggressive optimization techniques to be applied to the slice to make it very short. This paper focuses on the microarchitecture that supports this execution model. The primary novelty of the microarchitecture is the hardware support for the execution and validation of pre-computation slices. Additionally, this paper presents new architectures for the register file and the cache memory in order to support multiple versions of each variable and allow for efficient roll-back in case of misspeculation. We show that the proposed microarchitecture, together with the compiler support, achieves an average speedup of 2.2 for applications that conventional non-speculative approaches are not able to parallelize at all.
机译:本文介绍了Mitosis框架,该框架是用于推测性多线程的组合硬件和软件方法,即使在线程之间频繁相依的情况下也是如此。推测性多线程通过推测性地利用线程级并行性来提高单线程应用程序的性能-也就是说,即使编译器或运行时系统无法保证并行性的存在,也可以并行执行代码。所提出的方法基于通过软件在每个线程的开头(预计算切片)处添加的一段代码,通过软件预测/计算线程输入值。预计算分片通常在大多数时间(但不一定总是)计算正确的线程输入值。这允许将积极的优化技术应用于切片以使其非常短。本文重点介绍支持此执行模型的微体系结构。微体系结构的主要新颖之处在于对执行预计算切片的硬件支持。此外,本文提出了用于寄存器文件和高速缓存的新体系结构,以支持每个变量的多个版本,并在发生错误推测的情况下实现有效的回滚。我们表明,对于传统的非推测性方法根本无法并行化的应用程序,所提出的微体系结构以及编译器的支持可实现平均2.2的加速。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号