...
【24h】

Enhancing locality for recursive traversals of recursive structures

机译:增强局部性以递归遍历递归结构

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

摘要

While there has been decades of work on developing automatic, locality-enhancing transformations for regular programs that operate over dense matrices and arrays, there has been little investigation of such transformations for irregular programs, which operate over pointer-based data structures such as graphs, trees and lists. In this paper, we argue that, for a class of irregular applications we call traversal codes, there exists substantial data reuse and hence opportunity for locality exploitation. We develop a novel optimization called point blocking, inspired by the classic tiling loop transformation, and show that it can substantially enhance temporal locality in traversal codes. We then present a transformation and optimization framework called TreeTiler that automatically detects opportunities for applying point blocking and applies the transformation. TreeTiler uses autotuning techniques to determine appropriate parameters for the transformation. For a series of traversal algorithms drawn from real-world applications, we show that TreeTiler is able to deliver performance improvements of up to 245% over an optimized (but non-transformed) parallel baseline, and in several cases, significantly better scalability.
机译:尽管为在密集矩阵和数组上运行的常规程序开发自动的,增强局部性的转换已有数十年的工作,但对于针对基于指针的数据结构(例如图形,树和列表。在本文中,我们认为,对于称为“遍历代码”的一类不规则应用程序,存在大量的数据重用,因此存在进行局部开发的机会。我们开发了一种新颖的称为点阻塞的优化方法,该方法受经典的平铺循环变换的启发,并表明它可以大大增强遍历代码中的时间局部性。然后,我们提出了一个称为TreeTiler的转换和优化框架,该框架自动检测应用点阻塞的机会并进行转换。 TreeTiler使用自动调整技术来确定用于转换的适当参数。对于从实际应用程序中提取的一系列遍历算法,我们证明TreeTiler能够在优化(但未经转换)的并行基准上提供高达245%的性能提升,并且在某些情况下,可伸缩性显着提高。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号