首页> 外文学位 >Systematic compilation for predicated execution.
【24h】

Systematic compilation for predicated execution.

机译:系统编译以执行谓词。

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

摘要

The performance of modern processors depends on their ability to execute multiple instructions per cycle, requiring increasing levels of instruction-level parallelism (ILP) to be exposed in programs. One of the major challenges to increasing available ILP is overcoming the limitations imposed by branch instructions. One paradigm presented to help overcome problems with branches both at run time and at compile time is predication. Predication allows the elimination of branch instructions by providing an alternate means of controlling the condition of execution for individual instructions. Effective use of hardware support for predication requires advanced compiler support.; Many existing techniques for compilation using predication make approximations or use heuristics, the inaccuracy of which reduces achievable performance. In some cases, these techniques realize a performance loss compared to codes without predication. This dissertation proposes and investigates a systematic approach to compiling for predication which consistently generates efficient predicated code.; The four key compiler technologies presented here work synergistically to realize the potential of predication. The Partial Reverse If-Conversion Framework provides the first compilation framework to accurately balance control and predication, while providing other compiler components with complete access to the predicated code for further optimization. Though the full potential of the Partial Reverse If-Conversion Framework remains unexplored, current compiler technology justifies its worth.; To operate on predicated code, the optimizer, scheduler, and register allocator require accurate information regarding the relationships among predicates. The Predicate Analysis System is the first efficient predicate relationship database to provide an approximation-free representation.; Optimization, scheduling, and register allocation also require accurate knowledge of the flow of information in the predicated code. Using the Predicate Analysis System, the Predicate Dataflow Graph is built to provide dataflow information. The Predicate Dataflow Graph was developed to provide accurate dataflow information in the presence of predication without requiring a change in the dataflow analysis equations.; In the context of the Partial Reverse If-Conversion Framework, some otherwise unnecessarily complex optimizations become feasible. One example is the Program Decision Logic Optimizer, which uses predicated code and the Predicate Analysis System to represent program decision logic as Boolean expressions. These expressions are minimized, factored, and reformulated to create programs with optimized decision components. Within the given compilation framework, the PDLO has been demonstrated to break many performance bottlenecks due to program decision.; The Partial Reverse If-Conversion Framework, the Predicate Analysis System, the Predicate Dataflow Graph, and the Program Decision Logic Optimizer are demonstrated to work synergistically in the compiler to generate efficient code for nonnumeric programs. Using predication, these techniques effectively optimize codes in the presence of complex branch control flow.
机译:现代处理器的性能取决于它们每个周期执行多条指令的能力,这就要求在程序中公开越来越多的指令级并行性(ILP)。增加可用ILP的主要挑战之一是克服分支指令施加的限制。预测是为了在运行时和编译时帮助克服分支问题而提出的一种范例。谓词通过提供一种替代方法来控制单个指令的执行条件,从而消除了分支指令。有效地使用硬件支持进行预测需要高级编译器支持。许多使用谓词进行编译的现有技术都采用近似法或使用试探法,其不精确性会降低可实现的性能。在某些情况下,与没有预测的代码相比,这些技术会造成性能损失。本文提出并研究了一种系统的方法来编译谓词,该方法始终生成有效的谓词代码。此处介绍的四种关键编译器技术可以协同工作,以实现预测的潜力。部分反向If-Conversion框架提供了第一个编译框架,以准确地平衡控制和谓词,同时为其他编译器组件提供了对谓词代码的完全访问权限,以进行进一步的优化。尽管仍未开发出部分反向If-Conversion框架的全部潜力,但当前的编译器技术证明了其价值。要对谓词进行操作,优化器,调度程序和寄存器分配器需要有关谓词之间关系的准确信息。谓词分析系统是第一个提供无近似表示的有效谓词关系数据库。优化,调度和寄存器分配还需要准确了解谓语代码中的信息流。使用谓词分析系统,可以构建谓词数据流图以提供数据流信息。开发谓词数据流图可在存在谓词的情况下提供准确的数据流信息,而无需更改数据流分析方程式。在部分反向If-Conversion框架的背景下,一些原本不必要的复杂优化变得可行。一个示例是程序决策逻辑优化器,它使用谓词代码和谓词分析系统将程序决策逻辑表示为布尔表达式。这些表达式被最小化,分解和重新创建,以创建具有优化决策组件的程序。在给定的编译框架内,已经证明了PDLO由于程序决策而打破了许多性能瓶颈。演示了部分反向If-Conversion框架,谓词分析系统,谓词数据流图和程序决策逻辑优化器在编译器中协同工作,以生成用于非数值程序的有效代码。使用谓词,这些技术可以在存在复杂分支控制流的情况下有效地优化代码。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号