首页> 外文学位 >Speculative parallelization on multicore processors.
【24h】

Speculative parallelization on multicore processors.

机译:多核处理器上的推测性并行化。

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

摘要

With the advent of multicore processors, extracting thread level parallelism from a sequential program has become crucial for improving performance. However, many sequential programs cannot be easily parallelized due to the presence of dependences. To solve this problem this dissertation presents a thread-based execution model, called Copy-or-Discard (CorD), that supports speculative parallelization. In CorD, the state of speculative threads is maintained separately from the non-speculative computation state. If speculation is successful, the results of the speculative computation are committed by copying them into the non-speculative state. If a misspeculation is detected, no costly recovery mechanisms are needed as the speculative state can be simply discarded.;To illustrate the applicability of CorD, this dissertation first shows how to apply it to streaming applications. Optimizations are proposed to reduce data copying overhead. A lightweight scheme based on version comparison is also presented to detect misspeculations. It is observed that when misspeculation rate becomes high, the benefits of parallelism are usually nullified. To address this problem two techniques, Multiple Speculations and Incremental Recovery, are proposed. The first technique creates multiple versions of speculatively-executed code using different value predictions. If any one of these versions is found to be correct, the speculation is successful. The second technique focuses on reducing misspeculation cost. Instead of discarding all results, it allows saving and reuse of the results that are not affected by the variables that cause the misspeculation.;Finally, this dissertation shows the applicability of CorD in the presence of dynamic data structures. Such data structures pose many new challenges. The copying of data structures from non-speculative to speculative state is expensive due to the large sizes of data structures. The copying of updated data structures from speculative state to non-speculative state are complex due to the changes in the shape of dynamic data structures. In addition, translating pointers internal to dynamic data structures between their non-speculative and speculative memory addresses has to be addressed. This dissertation proposes an augmented design for the representation of dynamic data structures such that all of the above operations are performed efficiently.
机译:随着多核处理器的出现,从顺序程序中提取线程级并行性对于提高性能变得至关重要。但是,由于存在依赖关系,因此许多顺序程序无法轻易并行化。为了解决这个问题,本文提出了一种基于线程的执行模型,称为复制或丢弃(CorD),它支持推测并行化。在CorD中,推测线程的状态与非推测计算的状态分开维护。如果推测成功,则通过将推测结果复制到非推测状态来提交推测计算的结果。如果检测到错误推测,则不需要昂贵的恢复机制,因为可以简单地丢弃推测状态。为了说明CorD的适用性,本文首先说明如何将其应用于流应用程序。提出了优化措施以减少数据复制开销。还提出了一种基于版本比较的轻量级方案,以检测错误推测。可以观察到,当错误推测率变高时,并行性的好处通常是无效的。为了解决这个问题,提出了两种技术,多重推测和增量恢复。第一种技术使用不同的值预测来创建推测执行代码的多个版本。如果发现这些版本中的任何一个正确,则推测成功。第二种技术着重于降低错误推测的成本。代替丢弃所有结果,它可以保存和重用不受引起错误推测的变量影响的结果。最后,本文证明了在存在动态数据结构的情况下CorD的适用性。这样的数据结构带来了许多新的挑战。由于数据结构的大尺寸,将数据结构从非推测状态复制到推测状态的代价很高。由于动态数据结构形状的变化,将更新的数据结构从推测状态复制到非推测状态很复杂。另外,必须解决在动态数据结构的非推测性和推测性存储器地址之间转换内部动态数据结构的指针。本文提出了一种动态数据结构表示的增强设计,使得上述所有操作都能有效地进行。

著录项

  • 作者

    Tian, Chen.;

  • 作者单位

    University of California, Riverside.;

  • 授予单位 University of California, Riverside.;
  • 学科 Computer Science.
  • 学位 Ph.D.
  • 年度 2010
  • 页码 173 p.
  • 总页数 173
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 关键词

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号