Affiliation:
1. U. of California, Irvine
2. McGill University
3. U.of California, Irvine
Abstract
Optimizing compilers require accurate dependence testing to enable numerous, performance-enhancing transformations. However, data dependence testing is a difficult problem, particularly in the presence of pointers. Though existing approaches work well for pointers to named memory locations (i.e. other variables), they are overly conservative in the case of pointers to unnamed memory locations. The latter occurs in the context of dynamic, pointer-based data structures, used in a variety of applications ranging from system software to computational geometry to N-body and circuit simulations.
In this paper we present a new technique for performing more accurate data dependence testing in the presence of dynamic, pointer-based data structures. We will demonstrate its effectiveness by breaking false dependences that existing approaches cannot, and provide results which show that removing these dependences enables significant parallelization of a real application.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Cited by
19 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Composable, sound transformations of nested recursion and loops;Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation;2019-06-08
2. Improving ILP via Fused In-Order Superscalar and VLIW Instruction Dispatch Methods;Journal of Circuits, Systems and Computers;2018-11-12
3. K-DT: a formal system for the evaluation of linear data dependence testing techniques;The Journal of Supercomputing;2017-11-15
4. TreeFuser: a framework for analyzing and fusing general recursive tree traversals;Proceedings of the ACM on Programming Languages;2017-10-12
5. On fusing recursive traversals of K-d trees;Proceedings of the 25th International Conference on Compiler Construction;2016-03-17