• DocumentCode
    3315561
  • Title

    Loop optimization for aggregate array computations

  • Author

    Liu, Yanhong A. ; Stoller, Scott D.

  • Author_Institution
    Dept. of Comput. Sci., Indiana Univ., Bloomington, IN, USA
  • fYear
    1998
  • fDate
    14-16 May 1998
  • Firstpage
    262
  • Lastpage
    271
  • Abstract
    An aggregate array computation is a loop that computes accumulated quantities over array elements. Such computations are common in programs that use arrays, and the array elements involved in such computations often overlap, especially across iterations of loops, resulting in significant redundancy in the overall computation. The paper presents a method and algorithms that eliminate such overlapping aggregate array redundancies and shows both analytical and experimental performance improvements. The method is based on incrementalization, i.e., updating the values of aggregate array computations from iteration to iteration rather than computing them from scratch in each iteration. This involves maintaining additional information not maintained in the original program. The authors reduce various analysis problems to solving inequality constraints on loop variables and array subscripts, and they apply results from work on array data dependence analysis. Incrementalizing aggregate array computations produces drastic program speedup compared to previous optimizations. Previous methods for loop optimizations of arrays do not perform incrementalization, and previous techniques for loop incrementalization do not handle arrays
  • Keywords
    optimisation; optimising compilers; redundancy; subroutines; accumulated quantity computation; aggregate array computations; algorithms; array data dependence analysis; array element; array subscripts; incrementalization; inequality constraints; loop iteration; loop optimization; loop variables; performance improvements; program speedup; redundancy; Aggregates; Algorithm design and analysis; Computer science; Data analysis; Image processing; Optimization methods; Optimizing compilers; Performance analysis; Pixel; Program processors;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Computer Languages, 1998. Proceedings. 1998 International Conference on
  • Conference_Location
    Chicago, IL
  • ISSN
    1074-8970
  • Print_ISBN
    0-8186-8454-2
  • Type

    conf

  • DOI
    10.1109/ICCL.1998.674176
  • Filename
    674176