Issue No. 03 - July (1991 vol. 2)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/71.86110
<p>Regular section analysis, which summarizes interprocedural side effects on subarrays in a form useful to dependence analysis, while avoiding the complexity of prior solutions, is shown to be a practical addition to a production compiler. Optimizing compilers should produce efficient code even in the presence of high-level language constructs. However, current programming support systems are significantly lacking in their ability to analyze procedure calls. This deficiency complicates parallel programming, because loops withcalls can be a significant source of parallelism. The performance of regular section analysis is compared to two benchmarks: the LINPACK library of linear algebra subroutines and the Rice Compiler Evaluation Program Suite (RiCEPS), a set of complete application codes from a variety of scientific disciplines. The experimental results demonstrate that regular section analysis is an effective means of discovering parallelism, given programs written in an appropriately modular programming style.</p>
Index Termsoptimizing compilers; interprocedural bounded regular section analysis; subarrays;dependence analysis; production compiler; high-level language constructs; programmingsupport systems; procedure calls; LINPACK library; linear algebra subroutines; RiceCompiler Evaluation Program Suite; RiCEPS; application codes; scientific disciplines;modular programming style; parallel programming; program compilers; program testing
K. Kennedy and P. Havlak, "An Implementation of Interprocedural Bounded Regular Section Analysis," in IEEE Transactions on Parallel & Distributed Systems, vol. 2, no. , pp. 350-360, 1991.