Data-flow analysis of scalar variables and data dependence analysis on array elements are two important program analyses used in optimizing and parallelizing compilers. Traditional data-flow analysis models accesses of array elements simply as accesses to the entire array, and is inadequate for parallelizing loops in array-based programs. On the other hand, data dependence analysis differentiates between different array elements but is flow-insensitive.
This paper studies the combination of these two analyses---data-flow analyses---data-flow analysis of accesses to individual array elements. The problem of finding precise array dataflow information in the domain of loop nests where the loop bounds and array indices are affine functions of loop indices was first formulated by Feautrier. Feautrier's algorithm, based on parametric integer programming techniques, is general but inefficient. This paper presents an efficient algorithm that can find the same precise information for many of the programs found in practice. In this paper, we argue that data-flow analysis of individual array elements is necessary for effective automatic parallelization. In particular, we demonstrate the use of array data-flow analysis in an important optimization known as array privatization.
By demonstrating that array data-flow analysis can be computed efficiently and by showing the importance of the optimizations enabled by the analysis, this paper suggests that array data-flow analysis may become just as important in future optimizing and parallelizing compilers as data-flow and data dependence analysis are in today's compilers.
本文研究了这两种分析方法的组合-数据流分析-单个数组元素访问的数据流分析。 Feautrier首先提出了在循环嵌套的域中查找精确的数组数据流信息的问题,其中循环边界和数组索引是循环索引的仿射函数。 Feautrier的算法基于参数整数编程技术,虽然通用但效率低下。本文提出了一种有效的算法,可以为实践中发现的许多程序找到相同的精确信息。在本文中,我们认为单个数组元素的数据流分析对于有效的自动并行化是必要的。特别是,我们展示了阵列数据流分析在称为阵列私有化的重要优化中的用途。 P>
通过证明可以有效地计算数组数据流分析并通过显示分析支持的优化的重要性,本文表明,数组数据流分析在将来优化和并行化编译器方面可能与数据同等重要。当今的编译器中都具有流和数据依赖性分析的功能。 P>
机译:具有进行阵列私有化的高效阵列数据流分析的经验
机译:国际私人资本流动的复苏是否意味着援助的结束?:对发展中国家获取私人资本的分析
机译:国际私人资本流动的复苏是否意味着援助的结束?:对发展中国家获取私人资本的分析
机译:具有进行阵列私有化的高效阵列数据流分析的经验
机译:针对商品流,私人托运人成本和高速公路基础设施影响分析的运输优化营销。
机译:用于分析Illumina基因表达珠阵列数据的用户友好型工作流程可从arrayanalysis.org门户获取
机译:阵列私有化的高效阵列数据流分析经验
机译:私营部门的卫生保健信息系统:私营部门的系统可用性分析。第四卷。 a部分:私营部门系统可用性分析。 B部分:检查私营部门卫生信息系统指标的选择和应用。 C部分:私营部门卫生信息系统现场访问的建议