On fusing recursive traversals of K-d trees

  • Rajbhandari, S.; 
  • Kim, J.; 
  • Krishnamoorthy, S.; 
  • Pouchet, L.-N.; 
  • Rastello, F.; 
  • 외 2명
Citations

SCOPUS

19

초록

Loop fusion is a key program transformation for data locality optimization that is implemented in production compilers. But optimizing compilers for imperative languages currently cannot exploit fusion opportunities across a set of recursive tree traversal computations with producer-consumer relationships. In this paper, we develop a compile-time approach to dependence characterization and program transformation to enable fusion across recursively specified traversals over k-d trees. We present the FuseT source-tosource code transformation framework to automatically generate fused composite recursive operators from an input program containing a sequence of primitive recursive operators. We use our framework to implement fused operators for MADNESS, Multiresolution Adaptive Numerical Environment for Scientific Simulation. We show that locality optimization through fusion can offer significant performance improvement. © 2016 ACM.

키워드

Data locality; Fusion; Tree traversal
제목
On fusing recursive traversals of K-d trees
저자
Rajbhandari, S.; Kim, J.; Krishnamoorthy, S.; Pouchet, L.-N.; Rastello, F.; Harrison, R.J.; Sadayappan, P.
DOI
10.1145/2892208.2892228
발행일
2016-03
유형
Conference Paper
저널명
Proceedings of CC 2016: The 25th International Conference on Compiler Construction
페이지
152 ~ 162