Academia.eduAcademia.edu

Outline

An Implementation of Loop Fusion Using Simple-SUIF

Abstract

Loop fusion is a compiler optimization that merges the bodies of multiple loops into a single loop. Doing so in a serial program can reduce the loop overhead of the pro- gram as well as improve data locality and increase oppor- tunities for better cache utilization. Although not explored in this paper, it should be noted that loop fusion has been proven beneficial as well in parallel programs (11).

References (11)

  1. Alain Darte. On the complexity of loop fusion. Par- allel Computing, 26(9):1175-1193, 2000.
  2. Charles Fischer. Finding loops in control flow graphs.
  3. Charles Fischer. Cs701 final exam, December 1996.
  4. G. Gao, R. Olsen, V. Sarkar, and R. Thekkath. Col- lective loop fusion for array contraction. Technical report, School of Computer Science, McGill Univer- sity, March 1992.
  5. Stanford Compiler Group. The simple-suif compiler guide.
  6. K. Kennedy and K. S. M c Kinley. Loop distribution with arbitrary control flow. In Proceedings of Super- computing '90, New York, NY, 1990.
  7. Elefherios Koutsofios and Stephen C. North. Draw- ing graphs with dot.
  8. James Larus. A quick program profiling and tracing system.
  9. N. Manjikian and T. Abdelrahman. Fusion of loops for parallelism and locality. 1995.
  10. Phillip Mucci and Kevin London. Performance op- timization for the origin 2000, September 1998.
  11. S. Singhai and K. McKinley. Loop fusion for data locality and parallelism. In Proceedings of the Mid- Atlantic Student Workshop on Programming Lan- guages and Systems, New Paltz, April 1996.