首页> 外文期刊>ACM Transactions on Architecture and Code Optimization >Improved Loop Tiling Based on the Removal of Spurious False Dependences
【24h】

Improved Loop Tiling Based on the Removal of Spurious False Dependences

机译:基于消除虚假错误相关性的改进循环平铺

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

摘要

To preserve the validity of loop nest transformations and parallelization, data dependences need to be analyzed. Memory dependences come in two varieties: true dependences or false dependences. While true dependences must be satisfied in order to preserve the correct order of computations, false dependences are induced by the reuse of a single memory location to store multiple values. False dependences reduce the degrees of freedom for loop transformations. In particular, loop tiling is severely limited in the presence of these dependences. While array expansion removes all false dependences, the overhead on memory and the detrimental impact on register-level reuse can be catastrophic. We propose and evaluate a compilation technique to safely ignore a large number of false dependences in order to enable loop nest tiling in the polyhedral model. It is based on the precise characterization of interferences between live range intervals, and it does not incur any scalar or array expansion. Our algorithms have been implemented in the Pluto polyhedral compiler, and evaluated on the PolyBench suite.
机译:为了保持循环嵌套转换和并行化的有效性,需要分析数据依赖性。记忆依赖性分为两种:真依赖性或假依赖性。虽然必须满足真实的依存关系才能保留正确的计算顺序,但是由于重复使用单个存储位置来存储多个值而导致错误的依存关系。错误的依赖性降低了循环转换的自由度。特别是,在存在这些依赖性的情况下,循环拼贴将受到严格限制。尽管数组扩展消除了所有错误的依赖性,但是内存开销和对寄存器级重用的有害影响可能是灾难性的。我们提出并评估一种编译技术,以安全地忽略大量错误相关性,以便在多面体模型中启用循环嵌套平铺。它基于有效范围间隔之间干扰的精确表征,并且不会引起任何标量或数组扩展。我们的算法已在Pluto多面体编译器中实现,并在PolyBench套件上进行了评估。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号